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/AutomizerCInline_WitnessPrinter.xml -s ../../../trunk/examples/settings/default/automizer/svcomp-Reach-32bit-Automizer_Bitvector.epf -i ../../../trunk/examples/svcomp/loop-invgen/MADWiFi-encode_ie_ok_true-unreach-call_true-termination.i -------------------------------------------------------------------------------- This is Ultimate 0.1.23-61f4311 [2018-11-23 11:32:21,937 INFO L170 SettingsManager]: Resetting all preferences to default values... [2018-11-23 11:32:21,940 INFO L174 SettingsManager]: Resetting UltimateCore preferences to default values [2018-11-23 11:32:21,956 INFO L177 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2018-11-23 11:32:21,957 INFO L174 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2018-11-23 11:32:21,958 INFO L174 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2018-11-23 11:32:21,960 INFO L174 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2018-11-23 11:32:21,963 INFO L174 SettingsManager]: Resetting LassoRanker preferences to default values [2018-11-23 11:32:21,966 INFO L174 SettingsManager]: Resetting Reaching Definitions preferences to default values [2018-11-23 11:32:21,967 INFO L174 SettingsManager]: Resetting SyntaxChecker preferences to default values [2018-11-23 11:32:21,969 INFO L177 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2018-11-23 11:32:21,969 INFO L174 SettingsManager]: Resetting LTL2Aut preferences to default values [2018-11-23 11:32:21,970 INFO L174 SettingsManager]: Resetting PEA to Boogie preferences to default values [2018-11-23 11:32:21,972 INFO L174 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2018-11-23 11:32:21,979 INFO L174 SettingsManager]: Resetting ChcToBoogie preferences to default values [2018-11-23 11:32:21,980 INFO L174 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2018-11-23 11:32:21,983 INFO L174 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2018-11-23 11:32:21,985 INFO L174 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2018-11-23 11:32:21,990 INFO L174 SettingsManager]: Resetting CodeCheck preferences to default values [2018-11-23 11:32:21,995 INFO L174 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2018-11-23 11:32:21,997 INFO L174 SettingsManager]: Resetting RCFGBuilder preferences to default values [2018-11-23 11:32:21,999 INFO L174 SettingsManager]: Resetting TraceAbstraction preferences to default values [2018-11-23 11:32:22,003 INFO L177 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2018-11-23 11:32:22,003 INFO L177 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2018-11-23 11:32:22,003 INFO L174 SettingsManager]: Resetting TreeAutomizer preferences to default values [2018-11-23 11:32:22,004 INFO L174 SettingsManager]: Resetting IcfgTransformer preferences to default values [2018-11-23 11:32:22,006 INFO L174 SettingsManager]: Resetting Boogie Printer preferences to default values [2018-11-23 11:32:22,006 INFO L174 SettingsManager]: Resetting ReqPrinter preferences to default values [2018-11-23 11:32:22,007 INFO L174 SettingsManager]: Resetting Witness Printer preferences to default values [2018-11-23 11:32:22,008 INFO L177 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2018-11-23 11:32:22,008 INFO L174 SettingsManager]: Resetting CDTParser preferences to default values [2018-11-23 11:32:22,011 INFO L177 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2018-11-23 11:32:22,011 INFO L177 SettingsManager]: ReqParser provides no preferences, ignoring... [2018-11-23 11:32:22,011 INFO L174 SettingsManager]: Resetting SmtParser preferences to default values [2018-11-23 11:32:22,014 INFO L174 SettingsManager]: Resetting Witness Parser preferences to default values [2018-11-23 11:32:22,015 INFO L181 SettingsManager]: Finished resetting all preferences to default values... [2018-11-23 11:32:22,015 INFO L98 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/default/automizer/svcomp-Reach-32bit-Automizer_Bitvector.epf [2018-11-23 11:32:22,030 INFO L110 SettingsManager]: Loading preferences was successful [2018-11-23 11:32:22,031 INFO L112 SettingsManager]: Preferences different from defaults after loading the file: [2018-11-23 11:32:22,031 INFO L131 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2018-11-23 11:32:22,032 INFO L133 SettingsManager]: * ... calls to implemented procedures=ONLY_FOR_CONCURRENT_PROGRAMS [2018-11-23 11:32:22,032 INFO L131 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2018-11-23 11:32:22,032 INFO L133 SettingsManager]: * Create parallel compositions if possible=false [2018-11-23 11:32:22,033 INFO L133 SettingsManager]: * Use SBE=true [2018-11-23 11:32:22,033 INFO L131 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2018-11-23 11:32:22,033 INFO L133 SettingsManager]: * sizeof long=4 [2018-11-23 11:32:22,033 INFO L133 SettingsManager]: * sizeof POINTER=4 [2018-11-23 11:32:22,034 INFO L133 SettingsManager]: * Check division by zero=IGNORE [2018-11-23 11:32:22,034 INFO L133 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2018-11-23 11:32:22,034 INFO L133 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2018-11-23 11:32:22,034 INFO L133 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2018-11-23 11:32:22,034 INFO L133 SettingsManager]: * Use bitvectors instead of ints=true [2018-11-23 11:32:22,035 INFO L133 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2018-11-23 11:32:22,035 INFO L133 SettingsManager]: * sizeof long double=12 [2018-11-23 11:32:22,035 INFO L133 SettingsManager]: * Check if freed pointer was valid=false [2018-11-23 11:32:22,035 INFO L133 SettingsManager]: * Use constant arrays=true [2018-11-23 11:32:22,036 INFO L133 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2018-11-23 11:32:22,036 INFO L131 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2018-11-23 11:32:22,036 INFO L133 SettingsManager]: * Size of a code block=SequenceOfStatements [2018-11-23 11:32:22,036 INFO L133 SettingsManager]: * To the following directory=./dump/ [2018-11-23 11:32:22,036 INFO L133 SettingsManager]: * SMT solver=External_DefaultMode [2018-11-23 11:32:22,037 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2018-11-23 11:32:22,037 INFO L131 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2018-11-23 11:32:22,037 INFO L133 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2018-11-23 11:32:22,037 INFO L133 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2018-11-23 11:32:22,038 INFO L133 SettingsManager]: * Trace refinement strategy=WOLF [2018-11-23 11:32:22,038 INFO L133 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2018-11-23 11:32:22,038 INFO L133 SettingsManager]: * Command for external solver=cvc4nyu --tear-down-incremental --rewrite-divk --print-success --lang smt [2018-11-23 11:32:22,038 INFO L133 SettingsManager]: * Logic for external solver=AUFBV [2018-11-23 11:32:22,038 INFO L133 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2018-11-23 11:32:22,096 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2018-11-23 11:32:22,109 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2018-11-23 11:32:22,113 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2018-11-23 11:32:22,115 INFO L271 PluginConnector]: Initializing CDTParser... [2018-11-23 11:32:22,116 INFO L276 PluginConnector]: CDTParser initialized [2018-11-23 11:32:22,116 INFO L418 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/loop-invgen/MADWiFi-encode_ie_ok_true-unreach-call_true-termination.i [2018-11-23 11:32:22,176 INFO L221 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/1f0a24333/5503f5f09abc48b3bf01393bdfcdb1d0/FLAGb4aada6a1 [2018-11-23 11:32:22,640 INFO L307 CDTParser]: Found 1 translation units. [2018-11-23 11:32:22,640 INFO L161 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/loop-invgen/MADWiFi-encode_ie_ok_true-unreach-call_true-termination.i [2018-11-23 11:32:22,646 INFO L355 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/1f0a24333/5503f5f09abc48b3bf01393bdfcdb1d0/FLAGb4aada6a1 [2018-11-23 11:32:22,991 INFO L363 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/1f0a24333/5503f5f09abc48b3bf01393bdfcdb1d0 [2018-11-23 11:32:23,002 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2018-11-23 11:32:23,004 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2018-11-23 11:32:23,005 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2018-11-23 11:32:23,005 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2018-11-23 11:32:23,009 INFO L276 PluginConnector]: CACSL2BoogieTranslator initialized [2018-11-23 11:32:23,011 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 11:32:22" (1/1) ... [2018-11-23 11:32:23,014 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@340c8e31 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 11:32:23, skipping insertion in model container [2018-11-23 11:32:23,015 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 11:32:22" (1/1) ... [2018-11-23 11:32:23,026 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2018-11-23 11:32:23,054 INFO L176 MainTranslator]: Built tables and reachable declarations [2018-11-23 11:32:23,322 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 11:32:23,331 INFO L191 MainTranslator]: Completed pre-run [2018-11-23 11:32:23,359 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 11:32:23,384 INFO L195 MainTranslator]: Completed translation [2018-11-23 11:32:23,385 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 11:32:23 WrapperNode [2018-11-23 11:32:23,385 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2018-11-23 11:32:23,386 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2018-11-23 11:32:23,386 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2018-11-23 11:32:23,386 INFO L276 PluginConnector]: Boogie Procedure Inliner initialized [2018-11-23 11:32:23,398 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 11:32:23" (1/1) ... [2018-11-23 11:32:23,406 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 11:32:23" (1/1) ... [2018-11-23 11:32:23,414 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2018-11-23 11:32:23,414 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2018-11-23 11:32:23,414 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2018-11-23 11:32:23,415 INFO L276 PluginConnector]: Boogie Preprocessor initialized [2018-11-23 11:32:23,425 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 11:32:23" (1/1) ... [2018-11-23 11:32:23,426 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 11:32:23" (1/1) ... [2018-11-23 11:32:23,427 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 11:32:23" (1/1) ... [2018-11-23 11:32:23,428 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 11:32:23" (1/1) ... [2018-11-23 11:32:23,439 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 11:32:23" (1/1) ... [2018-11-23 11:32:23,447 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 11:32:23" (1/1) ... [2018-11-23 11:32:23,448 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 11:32:23" (1/1) ... [2018-11-23 11:32:23,450 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2018-11-23 11:32:23,451 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2018-11-23 11:32:23,451 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2018-11-23 11:32:23,451 INFO L276 PluginConnector]: RCFGBuilder initialized [2018-11-23 11:32:23,452 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 11:32:23" (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-23 11:32:23,586 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2018-11-23 11:32:23,586 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2018-11-23 11:32:23,586 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2018-11-23 11:32:23,586 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2018-11-23 11:32:23,587 INFO L130 BoogieDeclarations]: Found specification of procedure main [2018-11-23 11:32:23,587 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2018-11-23 11:32:23,587 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2018-11-23 11:32:23,587 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2018-11-23 11:32:24,183 INFO L275 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2018-11-23 11:32:24,184 INFO L280 CfgBuilder]: Removed 1 assue(true) statements. [2018-11-23 11:32:24,184 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 11:32:24 BoogieIcfgContainer [2018-11-23 11:32:24,184 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2018-11-23 11:32:24,185 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2018-11-23 11:32:24,185 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2018-11-23 11:32:24,189 INFO L276 PluginConnector]: TraceAbstraction initialized [2018-11-23 11:32:24,189 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 23.11 11:32:22" (1/3) ... [2018-11-23 11:32:24,190 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@4e240adf and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 23.11 11:32:24, skipping insertion in model container [2018-11-23 11:32:24,190 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 11:32:23" (2/3) ... [2018-11-23 11:32:24,191 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@4e240adf and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 23.11 11:32:24, skipping insertion in model container [2018-11-23 11:32:24,191 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 11:32:24" (3/3) ... [2018-11-23 11:32:24,193 INFO L112 eAbstractionObserver]: Analyzing ICFG MADWiFi-encode_ie_ok_true-unreach-call_true-termination.i [2018-11-23 11:32:24,204 INFO L156 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2018-11-23 11:32:24,213 INFO L168 ceAbstractionStarter]: Appying trace abstraction to program that has 1 error locations. [2018-11-23 11:32:24,231 INFO L257 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2018-11-23 11:32:24,265 INFO L133 ementStrategyFactory]: Using default assertion order modulation [2018-11-23 11:32:24,266 INFO L382 AbstractCegarLoop]: Interprodecural is true [2018-11-23 11:32:24,266 INFO L383 AbstractCegarLoop]: Hoare is true [2018-11-23 11:32:24,267 INFO L384 AbstractCegarLoop]: Compute interpolants for FPandBP [2018-11-23 11:32:24,267 INFO L385 AbstractCegarLoop]: Backedges is STRAIGHT_LINE [2018-11-23 11:32:24,267 INFO L386 AbstractCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2018-11-23 11:32:24,267 INFO L387 AbstractCegarLoop]: Difference is false [2018-11-23 11:32:24,268 INFO L388 AbstractCegarLoop]: Minimize is MINIMIZE_SEVPA [2018-11-23 11:32:24,268 INFO L393 AbstractCegarLoop]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2018-11-23 11:32:24,288 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states. [2018-11-23 11:32:24,294 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2018-11-23 11:32:24,295 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 11:32:24,296 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 11:32:24,298 INFO L423 AbstractCegarLoop]: === Iteration 1 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 11:32:24,305 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 11:32:24,305 INFO L82 PathProgramCache]: Analyzing trace with hash -1770779542, now seen corresponding path program 1 times [2018-11-23 11:32:24,310 INFO L223 ckRefinementStrategy]: Switched to mode CVC4_FPBP [2018-11-23 11:32:24,310 INFO L69 tionRefinementEngine]: Using refinement strategy WolfRefinementStrategy No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4nyu Starting monitored process 2 with cvc4nyu --tear-down-incremental --print-success --lang smt --rewrite-divk (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 2 with cvc4nyu --tear-down-incremental --print-success --lang smt --rewrite-divk [2018-11-23 11:32:24,329 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 11:32:24,372 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 11:32:24,390 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 11:32:24,395 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 11:32:24,865 INFO L256 TraceCheckUtils]: 0: Hoare triple {31#true} call ULTIMATE.init(); {31#true} is VALID [2018-11-23 11:32:24,869 INFO L273 TraceCheckUtils]: 1: Hoare triple {31#true} assume true; {31#true} is VALID [2018-11-23 11:32:24,870 INFO L268 TraceCheckUtils]: 2: Hoare quadruple {31#true} {31#true} #74#return; {31#true} is VALID [2018-11-23 11:32:24,870 INFO L256 TraceCheckUtils]: 3: Hoare triple {31#true} call #t~ret5 := main(); {31#true} is VALID [2018-11-23 11:32:24,870 INFO L273 TraceCheckUtils]: 4: Hoare triple {31#true} havoc ~p~0;havoc ~i~0;havoc ~leader_len~0;havoc ~bufsize~0;havoc ~bufsize_0~0;havoc ~ielen~0;~leader_len~0 := #t~nondet1;havoc #t~nondet1;~bufsize~0 := #t~nondet2;havoc #t~nondet2;~ielen~0 := #t~nondet3;havoc #t~nondet3; {31#true} is VALID [2018-11-23 11:32:24,871 INFO L273 TraceCheckUtils]: 5: Hoare triple {31#true} assume !!~bvslt32(~leader_len~0, 1000000bv32); {31#true} is VALID [2018-11-23 11:32:24,871 INFO L273 TraceCheckUtils]: 6: Hoare triple {31#true} assume !!~bvslt32(~bufsize~0, 1000000bv32); {31#true} is VALID [2018-11-23 11:32:24,871 INFO L273 TraceCheckUtils]: 7: Hoare triple {31#true} assume !!~bvslt32(~ielen~0, 1000000bv32); {31#true} is VALID [2018-11-23 11:32:24,873 INFO L273 TraceCheckUtils]: 8: Hoare triple {31#true} assume ~bvsgt32(~leader_len~0, 0bv32); {60#(bvsgt main_~leader_len~0 (_ bv0 32))} is VALID [2018-11-23 11:32:24,878 INFO L273 TraceCheckUtils]: 9: Hoare triple {60#(bvsgt main_~leader_len~0 (_ bv0 32))} assume ~bvsgt32(~bufsize~0, 0bv32); {60#(bvsgt main_~leader_len~0 (_ bv0 32))} is VALID [2018-11-23 11:32:24,884 INFO L273 TraceCheckUtils]: 10: Hoare triple {60#(bvsgt main_~leader_len~0 (_ bv0 32))} assume ~bvsgt32(~ielen~0, 0bv32); {60#(bvsgt main_~leader_len~0 (_ bv0 32))} is VALID [2018-11-23 11:32:24,885 INFO L273 TraceCheckUtils]: 11: Hoare triple {60#(bvsgt main_~leader_len~0 (_ bv0 32))} assume !~bvslt32(~bufsize~0, ~leader_len~0);~p~0 := 0bv32;~bufsize_0~0 := ~bufsize~0;~bufsize~0 := ~bvsub32(~bufsize~0, ~leader_len~0);~p~0 := ~bvadd32(~p~0, ~leader_len~0); {70#(bvsgt main_~p~0 (_ bv0 32))} is VALID [2018-11-23 11:32:24,887 INFO L273 TraceCheckUtils]: 12: Hoare triple {70#(bvsgt main_~p~0 (_ bv0 32))} assume !~bvslt32(~bufsize~0, ~bvmul32(2bv32, ~ielen~0));~i~0 := 0bv32; {70#(bvsgt main_~p~0 (_ bv0 32))} is VALID [2018-11-23 11:32:24,887 INFO L273 TraceCheckUtils]: 13: Hoare triple {70#(bvsgt main_~p~0 (_ bv0 32))} assume !!(~bvslt32(~i~0, ~ielen~0) && ~bvsgt32(~bufsize~0, 2bv32)); {70#(bvsgt main_~p~0 (_ bv0 32))} is VALID [2018-11-23 11:32:24,897 INFO L256 TraceCheckUtils]: 14: Hoare triple {70#(bvsgt main_~p~0 (_ bv0 32))} call __VERIFIER_assert((if ~bvsle32(0bv32, ~p~0) then 1bv32 else 0bv32)); {80#(= (bvadd |__VERIFIER_assert_#in~cond| (_ bv4294967295 32)) (_ bv0 32))} is VALID [2018-11-23 11:32:24,910 INFO L273 TraceCheckUtils]: 15: Hoare triple {80#(= (bvadd |__VERIFIER_assert_#in~cond| (_ bv4294967295 32)) (_ bv0 32))} ~cond := #in~cond; {84#(= (bvadd __VERIFIER_assert_~cond (_ bv4294967295 32)) (_ bv0 32))} is VALID [2018-11-23 11:32:24,923 INFO L273 TraceCheckUtils]: 16: Hoare triple {84#(= (bvadd __VERIFIER_assert_~cond (_ bv4294967295 32)) (_ bv0 32))} assume 0bv32 == ~cond; {32#false} is VALID [2018-11-23 11:32:24,924 INFO L273 TraceCheckUtils]: 17: Hoare triple {32#false} assume !false; {32#false} is VALID [2018-11-23 11:32:24,929 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-23 11:32:24,930 INFO L312 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [MP cvc4nyu --tear-down-incremental --print-success --lang smt --rewrite-divk (2)] Exception during sending of exit command (exit): Broken pipe [2018-11-23 11:32:24,934 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 11:32:24,934 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2018-11-23 11:32:24,940 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 18 [2018-11-23 11:32:24,942 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 11:32:24,945 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states. [2018-11-23 11:32:25,024 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 18 edges. 18 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 11:32:25,024 INFO L459 AbstractCegarLoop]: Interpolant automaton has 6 states [2018-11-23 11:32:25,033 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2018-11-23 11:32:25,034 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2018-11-23 11:32:25,036 INFO L87 Difference]: Start difference. First operand 28 states. Second operand 6 states. [2018-11-23 11:32:26,177 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 11:32:26,178 INFO L93 Difference]: Finished difference Result 55 states and 77 transitions. [2018-11-23 11:32:26,178 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2018-11-23 11:32:26,178 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 18 [2018-11-23 11:32:26,179 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 11:32:26,180 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2018-11-23 11:32:26,191 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 77 transitions. [2018-11-23 11:32:26,192 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2018-11-23 11:32:26,199 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 77 transitions. [2018-11-23 11:32:26,200 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 77 transitions. [2018-11-23 11:32:26,415 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-23 11:32:26,427 INFO L225 Difference]: With dead ends: 55 [2018-11-23 11:32:26,427 INFO L226 Difference]: Without dead ends: 32 [2018-11-23 11:32:26,431 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 19 GetRequests, 13 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=17, Invalid=39, Unknown=0, NotChecked=0, Total=56 [2018-11-23 11:32:26,447 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 32 states. [2018-11-23 11:32:26,494 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 32 to 30. [2018-11-23 11:32:26,494 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 11:32:26,495 INFO L82 GeneralOperation]: Start isEquivalent. First operand 32 states. Second operand 30 states. [2018-11-23 11:32:26,495 INFO L74 IsIncluded]: Start isIncluded. First operand 32 states. Second operand 30 states. [2018-11-23 11:32:26,495 INFO L87 Difference]: Start difference. First operand 32 states. Second operand 30 states. [2018-11-23 11:32:26,501 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 11:32:26,502 INFO L93 Difference]: Finished difference Result 32 states and 34 transitions. [2018-11-23 11:32:26,502 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 34 transitions. [2018-11-23 11:32:26,503 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 11:32:26,503 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 11:32:26,503 INFO L74 IsIncluded]: Start isIncluded. First operand 30 states. Second operand 32 states. [2018-11-23 11:32:26,504 INFO L87 Difference]: Start difference. First operand 30 states. Second operand 32 states. [2018-11-23 11:32:26,508 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 11:32:26,508 INFO L93 Difference]: Finished difference Result 32 states and 34 transitions. [2018-11-23 11:32:26,509 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 34 transitions. [2018-11-23 11:32:26,510 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 11:32:26,510 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 11:32:26,510 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 11:32:26,510 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 11:32:26,511 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 30 states. [2018-11-23 11:32:26,514 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 30 states to 30 states and 31 transitions. [2018-11-23 11:32:26,518 INFO L78 Accepts]: Start accepts. Automaton has 30 states and 31 transitions. Word has length 18 [2018-11-23 11:32:26,518 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 11:32:26,518 INFO L480 AbstractCegarLoop]: Abstraction has 30 states and 31 transitions. [2018-11-23 11:32:26,519 INFO L481 AbstractCegarLoop]: Interpolant automaton has 6 states. [2018-11-23 11:32:26,519 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 31 transitions. [2018-11-23 11:32:26,520 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2018-11-23 11:32:26,520 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 11:32:26,521 INFO L402 BasicCegarLoop]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 11:32:26,521 INFO L423 AbstractCegarLoop]: === Iteration 2 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 11:32:26,521 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 11:32:26,522 INFO L82 PathProgramCache]: Analyzing trace with hash -1769173835, now seen corresponding path program 1 times [2018-11-23 11:32:26,522 INFO L223 ckRefinementStrategy]: Switched to mode CVC4_FPBP [2018-11-23 11:32:26,522 INFO L69 tionRefinementEngine]: Using refinement strategy WolfRefinementStrategy No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4nyu Starting monitored process 3 with cvc4nyu --tear-down-incremental --print-success --lang smt --rewrite-divk (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 3 with cvc4nyu --tear-down-incremental --print-success --lang smt --rewrite-divk [2018-11-23 11:32:26,552 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 11:32:26,593 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 11:32:26,647 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 11:32:26,650 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 11:32:27,632 INFO L256 TraceCheckUtils]: 0: Hoare triple {274#true} call ULTIMATE.init(); {274#true} is VALID [2018-11-23 11:32:27,633 INFO L273 TraceCheckUtils]: 1: Hoare triple {274#true} assume true; {274#true} is VALID [2018-11-23 11:32:27,633 INFO L268 TraceCheckUtils]: 2: Hoare quadruple {274#true} {274#true} #74#return; {274#true} is VALID [2018-11-23 11:32:27,634 INFO L256 TraceCheckUtils]: 3: Hoare triple {274#true} call #t~ret5 := main(); {274#true} is VALID [2018-11-23 11:32:27,634 INFO L273 TraceCheckUtils]: 4: Hoare triple {274#true} havoc ~p~0;havoc ~i~0;havoc ~leader_len~0;havoc ~bufsize~0;havoc ~bufsize_0~0;havoc ~ielen~0;~leader_len~0 := #t~nondet1;havoc #t~nondet1;~bufsize~0 := #t~nondet2;havoc #t~nondet2;~ielen~0 := #t~nondet3;havoc #t~nondet3; {274#true} is VALID [2018-11-23 11:32:27,650 INFO L273 TraceCheckUtils]: 5: Hoare triple {274#true} assume !!~bvslt32(~leader_len~0, 1000000bv32); {294#(bvslt main_~leader_len~0 (_ bv1000000 32))} is VALID [2018-11-23 11:32:27,659 INFO L273 TraceCheckUtils]: 6: Hoare triple {294#(bvslt main_~leader_len~0 (_ bv1000000 32))} assume !!~bvslt32(~bufsize~0, 1000000bv32); {298#(and (bvslt main_~bufsize~0 (_ bv1000000 32)) (bvslt main_~leader_len~0 (_ bv1000000 32)))} is VALID [2018-11-23 11:32:27,674 INFO L273 TraceCheckUtils]: 7: Hoare triple {298#(and (bvslt main_~bufsize~0 (_ bv1000000 32)) (bvslt main_~leader_len~0 (_ bv1000000 32)))} assume !!~bvslt32(~ielen~0, 1000000bv32); {302#(and (bvslt main_~bufsize~0 (_ bv1000000 32)) (bvslt main_~leader_len~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)))} is VALID [2018-11-23 11:32:27,681 INFO L273 TraceCheckUtils]: 8: Hoare triple {302#(and (bvslt main_~bufsize~0 (_ bv1000000 32)) (bvslt main_~leader_len~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)))} assume ~bvsgt32(~leader_len~0, 0bv32); {306#(and (bvslt main_~bufsize~0 (_ bv1000000 32)) (bvslt main_~leader_len~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~leader_len~0 (_ bv0 32)))} is VALID [2018-11-23 11:32:27,682 INFO L273 TraceCheckUtils]: 9: Hoare triple {306#(and (bvslt main_~bufsize~0 (_ bv1000000 32)) (bvslt main_~leader_len~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~leader_len~0 (_ bv0 32)))} assume ~bvsgt32(~bufsize~0, 0bv32); {310#(and (bvsgt main_~bufsize~0 (_ bv0 32)) (bvslt main_~bufsize~0 (_ bv1000000 32)) (bvslt main_~leader_len~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~leader_len~0 (_ bv0 32)))} is VALID [2018-11-23 11:32:27,685 INFO L273 TraceCheckUtils]: 10: Hoare triple {310#(and (bvsgt main_~bufsize~0 (_ bv0 32)) (bvslt main_~bufsize~0 (_ bv1000000 32)) (bvslt main_~leader_len~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~leader_len~0 (_ bv0 32)))} assume ~bvsgt32(~ielen~0, 0bv32); {314#(and (bvsgt main_~bufsize~0 (_ bv0 32)) (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt main_~bufsize~0 (_ bv1000000 32)) (bvslt main_~leader_len~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~leader_len~0 (_ bv0 32)))} is VALID [2018-11-23 11:32:27,690 INFO L273 TraceCheckUtils]: 11: Hoare triple {314#(and (bvsgt main_~bufsize~0 (_ bv0 32)) (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt main_~bufsize~0 (_ bv1000000 32)) (bvslt main_~leader_len~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~leader_len~0 (_ bv0 32)))} assume !~bvslt32(~bufsize~0, ~leader_len~0);~p~0 := 0bv32;~bufsize_0~0 := ~bufsize~0;~bufsize~0 := ~bvsub32(~bufsize~0, ~leader_len~0);~p~0 := ~bvadd32(~p~0, ~leader_len~0); {318#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt main_~bufsize_0~0 main_~p~0)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~p~0 (_ bv0 32)) (= main_~bufsize~0 (bvadd (bvneg main_~p~0) main_~bufsize_0~0)))} is VALID [2018-11-23 11:32:27,693 INFO L273 TraceCheckUtils]: 12: Hoare triple {318#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt main_~bufsize_0~0 main_~p~0)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~p~0 (_ bv0 32)) (= main_~bufsize~0 (bvadd (bvneg main_~p~0) main_~bufsize_0~0)))} assume !~bvslt32(~bufsize~0, ~bvmul32(2bv32, ~ielen~0));~i~0 := 0bv32; {322#(and (not (bvslt main_~bufsize_0~0 main_~p~0)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (exists ((main_~ielen~0 (_ BitVec 32))) (and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt main_~bufsize~0 (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~ielen~0 (_ bv1000000 32)))) (bvsgt main_~p~0 (_ bv0 32)) (= main_~bufsize~0 (bvadd (bvneg main_~p~0) main_~bufsize_0~0)))} is VALID [2018-11-23 11:32:27,694 INFO L273 TraceCheckUtils]: 13: Hoare triple {322#(and (not (bvslt main_~bufsize_0~0 main_~p~0)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (exists ((main_~ielen~0 (_ BitVec 32))) (and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt main_~bufsize~0 (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~ielen~0 (_ bv1000000 32)))) (bvsgt main_~p~0 (_ bv0 32)) (= main_~bufsize~0 (bvadd (bvneg main_~p~0) main_~bufsize_0~0)))} assume !!(~bvslt32(~i~0, ~ielen~0) && ~bvsgt32(~bufsize~0, 2bv32)); {326#(and (not (bvslt main_~bufsize_0~0 main_~p~0)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvsgt (bvadd (bvneg main_~p~0) main_~bufsize_0~0) (_ bv2 32)) (bvsgt main_~p~0 (_ bv0 32)))} is VALID [2018-11-23 11:32:27,694 INFO L256 TraceCheckUtils]: 14: Hoare triple {326#(and (not (bvslt main_~bufsize_0~0 main_~p~0)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvsgt (bvadd (bvneg main_~p~0) main_~bufsize_0~0) (_ bv2 32)) (bvsgt main_~p~0 (_ bv0 32)))} call __VERIFIER_assert((if ~bvsle32(0bv32, ~p~0) then 1bv32 else 0bv32)); {274#true} is VALID [2018-11-23 11:32:27,695 INFO L273 TraceCheckUtils]: 15: Hoare triple {274#true} ~cond := #in~cond; {274#true} is VALID [2018-11-23 11:32:27,696 INFO L273 TraceCheckUtils]: 16: Hoare triple {274#true} assume !(0bv32 == ~cond); {274#true} is VALID [2018-11-23 11:32:27,696 INFO L273 TraceCheckUtils]: 17: Hoare triple {274#true} assume true; {274#true} is VALID [2018-11-23 11:32:27,701 INFO L268 TraceCheckUtils]: 18: Hoare quadruple {274#true} {326#(and (not (bvslt main_~bufsize_0~0 main_~p~0)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvsgt (bvadd (bvneg main_~p~0) main_~bufsize_0~0) (_ bv2 32)) (bvsgt main_~p~0 (_ bv0 32)))} #78#return; {326#(and (not (bvslt main_~bufsize_0~0 main_~p~0)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvsgt (bvadd (bvneg main_~p~0) main_~bufsize_0~0) (_ bv2 32)) (bvsgt main_~p~0 (_ bv0 32)))} is VALID [2018-11-23 11:32:27,720 INFO L256 TraceCheckUtils]: 19: Hoare triple {326#(and (not (bvslt main_~bufsize_0~0 main_~p~0)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvsgt (bvadd (bvneg main_~p~0) main_~bufsize_0~0) (_ bv2 32)) (bvsgt main_~p~0 (_ bv0 32)))} call __VERIFIER_assert((if ~bvslt32(~bvadd32(1bv32, ~p~0), ~bufsize_0~0) then 1bv32 else 0bv32)); {345#(= (bvadd |__VERIFIER_assert_#in~cond| (_ bv4294967295 32)) (_ bv0 32))} is VALID [2018-11-23 11:32:27,721 INFO L273 TraceCheckUtils]: 20: Hoare triple {345#(= (bvadd |__VERIFIER_assert_#in~cond| (_ bv4294967295 32)) (_ bv0 32))} ~cond := #in~cond; {349#(= (bvadd __VERIFIER_assert_~cond (_ bv4294967295 32)) (_ bv0 32))} is VALID [2018-11-23 11:32:27,721 INFO L273 TraceCheckUtils]: 21: Hoare triple {349#(= (bvadd __VERIFIER_assert_~cond (_ bv4294967295 32)) (_ bv0 32))} assume 0bv32 == ~cond; {275#false} is VALID [2018-11-23 11:32:27,722 INFO L273 TraceCheckUtils]: 22: Hoare triple {275#false} assume !false; {275#false} is VALID [2018-11-23 11:32:27,725 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-23 11:32:27,726 INFO L312 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2018-11-23 11:32:27,729 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 11:32:27,729 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2018-11-23 11:32:27,730 INFO L78 Accepts]: Start accepts. Automaton has 13 states. Word has length 23 [2018-11-23 11:32:27,731 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 11:32:27,731 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 13 states. [2018-11-23 11:32:27,813 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 23 edges. 23 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 11:32:27,813 INFO L459 AbstractCegarLoop]: Interpolant automaton has 13 states [2018-11-23 11:32:27,813 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2018-11-23 11:32:27,813 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=38, Invalid=118, Unknown=0, NotChecked=0, Total=156 [2018-11-23 11:32:27,814 INFO L87 Difference]: Start difference. First operand 30 states and 31 transitions. Second operand 13 states. [2018-11-23 11:32:28,549 WARN L180 SmtUtils]: Spent 119.00 ms on a formula simplification. DAG size of input: 27 DAG size of output: 25 [2018-11-23 11:32:28,808 WARN L180 SmtUtils]: Spent 191.00 ms on a formula simplification. DAG size of input: 28 DAG size of output: 21 [2018-11-23 11:32:29,608 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 11:32:29,609 INFO L93 Difference]: Finished difference Result 38 states and 39 transitions. [2018-11-23 11:32:29,609 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2018-11-23 11:32:29,609 INFO L78 Accepts]: Start accepts. Automaton has 13 states. Word has length 23 [2018-11-23 11:32:29,610 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 11:32:29,610 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 13 states. [2018-11-23 11:32:29,613 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 36 transitions. [2018-11-23 11:32:29,613 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 13 states. [2018-11-23 11:32:29,616 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 36 transitions. [2018-11-23 11:32:29,617 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 13 states and 36 transitions. [2018-11-23 11:32:29,723 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 36 edges. 36 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 11:32:29,726 INFO L225 Difference]: With dead ends: 38 [2018-11-23 11:32:29,726 INFO L226 Difference]: Without dead ends: 36 [2018-11-23 11:32:29,727 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 26 GetRequests, 11 SyntacticMatches, 0 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 34 ImplicationChecksByTransitivity, 1.2s TimeCoverageRelationStatistics Valid=73, Invalid=199, Unknown=0, NotChecked=0, Total=272 [2018-11-23 11:32:29,728 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 36 states. [2018-11-23 11:32:29,750 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 36 to 35. [2018-11-23 11:32:29,751 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 11:32:29,751 INFO L82 GeneralOperation]: Start isEquivalent. First operand 36 states. Second operand 35 states. [2018-11-23 11:32:29,751 INFO L74 IsIncluded]: Start isIncluded. First operand 36 states. Second operand 35 states. [2018-11-23 11:32:29,751 INFO L87 Difference]: Start difference. First operand 36 states. Second operand 35 states. [2018-11-23 11:32:29,756 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 11:32:29,756 INFO L93 Difference]: Finished difference Result 36 states and 37 transitions. [2018-11-23 11:32:29,756 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 37 transitions. [2018-11-23 11:32:29,757 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 11:32:29,757 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 11:32:29,757 INFO L74 IsIncluded]: Start isIncluded. First operand 35 states. Second operand 36 states. [2018-11-23 11:32:29,758 INFO L87 Difference]: Start difference. First operand 35 states. Second operand 36 states. [2018-11-23 11:32:29,761 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 11:32:29,761 INFO L93 Difference]: Finished difference Result 36 states and 37 transitions. [2018-11-23 11:32:29,761 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 37 transitions. [2018-11-23 11:32:29,762 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 11:32:29,762 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 11:32:29,763 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 11:32:29,763 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 11:32:29,763 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 35 states. [2018-11-23 11:32:29,766 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 35 states to 35 states and 36 transitions. [2018-11-23 11:32:29,766 INFO L78 Accepts]: Start accepts. Automaton has 35 states and 36 transitions. Word has length 23 [2018-11-23 11:32:29,766 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 11:32:29,767 INFO L480 AbstractCegarLoop]: Abstraction has 35 states and 36 transitions. [2018-11-23 11:32:29,767 INFO L481 AbstractCegarLoop]: Interpolant automaton has 13 states. [2018-11-23 11:32:29,767 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 36 transitions. [2018-11-23 11:32:29,768 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 32 [2018-11-23 11:32:29,770 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 11:32:29,770 INFO L402 BasicCegarLoop]: trace histogram [3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 11:32:29,770 INFO L423 AbstractCegarLoop]: === Iteration 3 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 11:32:29,771 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 11:32:29,771 INFO L82 PathProgramCache]: Analyzing trace with hash 1854020618, now seen corresponding path program 1 times [2018-11-23 11:32:29,771 INFO L223 ckRefinementStrategy]: Switched to mode CVC4_FPBP [2018-11-23 11:32:29,772 INFO L69 tionRefinementEngine]: Using refinement strategy WolfRefinementStrategy No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4nyu Starting monitored process 4 with cvc4nyu --tear-down-incremental --print-success --lang smt --rewrite-divk (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 4 with cvc4nyu --tear-down-incremental --print-success --lang smt --rewrite-divk [2018-11-23 11:32:29,794 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 11:32:29,830 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 11:32:29,846 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 11:32:29,849 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 11:32:30,029 INFO L256 TraceCheckUtils]: 0: Hoare triple {534#true} call ULTIMATE.init(); {534#true} is VALID [2018-11-23 11:32:30,030 INFO L273 TraceCheckUtils]: 1: Hoare triple {534#true} assume true; {534#true} is VALID [2018-11-23 11:32:30,030 INFO L268 TraceCheckUtils]: 2: Hoare quadruple {534#true} {534#true} #74#return; {534#true} is VALID [2018-11-23 11:32:30,031 INFO L256 TraceCheckUtils]: 3: Hoare triple {534#true} call #t~ret5 := main(); {534#true} is VALID [2018-11-23 11:32:30,032 INFO L273 TraceCheckUtils]: 4: Hoare triple {534#true} havoc ~p~0;havoc ~i~0;havoc ~leader_len~0;havoc ~bufsize~0;havoc ~bufsize_0~0;havoc ~ielen~0;~leader_len~0 := #t~nondet1;havoc #t~nondet1;~bufsize~0 := #t~nondet2;havoc #t~nondet2;~ielen~0 := #t~nondet3;havoc #t~nondet3; {534#true} is VALID [2018-11-23 11:32:30,032 INFO L273 TraceCheckUtils]: 5: Hoare triple {534#true} assume !!~bvslt32(~leader_len~0, 1000000bv32); {554#(bvslt main_~leader_len~0 (_ bv1000000 32))} is VALID [2018-11-23 11:32:30,033 INFO L273 TraceCheckUtils]: 6: Hoare triple {554#(bvslt main_~leader_len~0 (_ bv1000000 32))} assume !!~bvslt32(~bufsize~0, 1000000bv32); {554#(bvslt main_~leader_len~0 (_ bv1000000 32))} is VALID [2018-11-23 11:32:30,033 INFO L273 TraceCheckUtils]: 7: Hoare triple {554#(bvslt main_~leader_len~0 (_ bv1000000 32))} assume !!~bvslt32(~ielen~0, 1000000bv32); {554#(bvslt main_~leader_len~0 (_ bv1000000 32))} is VALID [2018-11-23 11:32:30,034 INFO L273 TraceCheckUtils]: 8: Hoare triple {554#(bvslt main_~leader_len~0 (_ bv1000000 32))} assume ~bvsgt32(~leader_len~0, 0bv32); {564#(and (bvslt main_~leader_len~0 (_ bv1000000 32)) (bvsgt main_~leader_len~0 (_ bv0 32)))} is VALID [2018-11-23 11:32:30,034 INFO L273 TraceCheckUtils]: 9: Hoare triple {564#(and (bvslt main_~leader_len~0 (_ bv1000000 32)) (bvsgt main_~leader_len~0 (_ bv0 32)))} assume ~bvsgt32(~bufsize~0, 0bv32); {564#(and (bvslt main_~leader_len~0 (_ bv1000000 32)) (bvsgt main_~leader_len~0 (_ bv0 32)))} is VALID [2018-11-23 11:32:30,039 INFO L273 TraceCheckUtils]: 10: Hoare triple {564#(and (bvslt main_~leader_len~0 (_ bv1000000 32)) (bvsgt main_~leader_len~0 (_ bv0 32)))} assume ~bvsgt32(~ielen~0, 0bv32); {564#(and (bvslt main_~leader_len~0 (_ bv1000000 32)) (bvsgt main_~leader_len~0 (_ bv0 32)))} is VALID [2018-11-23 11:32:30,040 INFO L273 TraceCheckUtils]: 11: Hoare triple {564#(and (bvslt main_~leader_len~0 (_ bv1000000 32)) (bvsgt main_~leader_len~0 (_ bv0 32)))} assume !~bvslt32(~bufsize~0, ~leader_len~0);~p~0 := 0bv32;~bufsize_0~0 := ~bufsize~0;~bufsize~0 := ~bvsub32(~bufsize~0, ~leader_len~0);~p~0 := ~bvadd32(~p~0, ~leader_len~0); {574#(and (bvslt main_~p~0 (_ bv1000000 32)) (bvsgt main_~p~0 (_ bv0 32)))} is VALID [2018-11-23 11:32:30,041 INFO L273 TraceCheckUtils]: 12: Hoare triple {574#(and (bvslt main_~p~0 (_ bv1000000 32)) (bvsgt main_~p~0 (_ bv0 32)))} assume !~bvslt32(~bufsize~0, ~bvmul32(2bv32, ~ielen~0));~i~0 := 0bv32; {574#(and (bvslt main_~p~0 (_ bv1000000 32)) (bvsgt main_~p~0 (_ bv0 32)))} is VALID [2018-11-23 11:32:30,041 INFO L273 TraceCheckUtils]: 13: Hoare triple {574#(and (bvslt main_~p~0 (_ bv1000000 32)) (bvsgt main_~p~0 (_ bv0 32)))} assume !!(~bvslt32(~i~0, ~ielen~0) && ~bvsgt32(~bufsize~0, 2bv32)); {574#(and (bvslt main_~p~0 (_ bv1000000 32)) (bvsgt main_~p~0 (_ bv0 32)))} is VALID [2018-11-23 11:32:30,041 INFO L256 TraceCheckUtils]: 14: Hoare triple {574#(and (bvslt main_~p~0 (_ bv1000000 32)) (bvsgt main_~p~0 (_ bv0 32)))} call __VERIFIER_assert((if ~bvsle32(0bv32, ~p~0) then 1bv32 else 0bv32)); {534#true} is VALID [2018-11-23 11:32:30,042 INFO L273 TraceCheckUtils]: 15: Hoare triple {534#true} ~cond := #in~cond; {534#true} is VALID [2018-11-23 11:32:30,042 INFO L273 TraceCheckUtils]: 16: Hoare triple {534#true} assume !(0bv32 == ~cond); {534#true} is VALID [2018-11-23 11:32:30,042 INFO L273 TraceCheckUtils]: 17: Hoare triple {534#true} assume true; {534#true} is VALID [2018-11-23 11:32:30,063 INFO L268 TraceCheckUtils]: 18: Hoare quadruple {534#true} {574#(and (bvslt main_~p~0 (_ bv1000000 32)) (bvsgt main_~p~0 (_ bv0 32)))} #78#return; {574#(and (bvslt main_~p~0 (_ bv1000000 32)) (bvsgt main_~p~0 (_ bv0 32)))} is VALID [2018-11-23 11:32:30,063 INFO L256 TraceCheckUtils]: 19: Hoare triple {574#(and (bvslt main_~p~0 (_ bv1000000 32)) (bvsgt main_~p~0 (_ bv0 32)))} call __VERIFIER_assert((if ~bvslt32(~bvadd32(1bv32, ~p~0), ~bufsize_0~0) then 1bv32 else 0bv32)); {534#true} is VALID [2018-11-23 11:32:30,064 INFO L273 TraceCheckUtils]: 20: Hoare triple {534#true} ~cond := #in~cond; {534#true} is VALID [2018-11-23 11:32:30,064 INFO L273 TraceCheckUtils]: 21: Hoare triple {534#true} assume !(0bv32 == ~cond); {534#true} is VALID [2018-11-23 11:32:30,064 INFO L273 TraceCheckUtils]: 22: Hoare triple {534#true} assume true; {534#true} is VALID [2018-11-23 11:32:30,073 INFO L268 TraceCheckUtils]: 23: Hoare quadruple {534#true} {574#(and (bvslt main_~p~0 (_ bv1000000 32)) (bvsgt main_~p~0 (_ bv0 32)))} #80#return; {574#(and (bvslt main_~p~0 (_ bv1000000 32)) (bvsgt main_~p~0 (_ bv0 32)))} is VALID [2018-11-23 11:32:30,087 INFO L273 TraceCheckUtils]: 24: Hoare triple {574#(and (bvslt main_~p~0 (_ bv1000000 32)) (bvsgt main_~p~0 (_ bv0 32)))} ~p~0 := ~bvadd32(2bv32, ~p~0); {614#(and (bvsgt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv1000000 32)))} is VALID [2018-11-23 11:32:30,088 INFO L273 TraceCheckUtils]: 25: Hoare triple {614#(and (bvsgt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv1000000 32)))} #t~post4 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post4);havoc #t~post4; {614#(and (bvsgt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv1000000 32)))} is VALID [2018-11-23 11:32:30,089 INFO L273 TraceCheckUtils]: 26: Hoare triple {614#(and (bvsgt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv1000000 32)))} assume !!(~bvslt32(~i~0, ~ielen~0) && ~bvsgt32(~bufsize~0, 2bv32)); {614#(and (bvsgt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv1000000 32)))} is VALID [2018-11-23 11:32:30,091 INFO L256 TraceCheckUtils]: 27: Hoare triple {614#(and (bvsgt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv1000000 32)))} call __VERIFIER_assert((if ~bvsle32(0bv32, ~p~0) then 1bv32 else 0bv32)); {624#(= (bvadd |__VERIFIER_assert_#in~cond| (_ bv4294967295 32)) (_ bv0 32))} is VALID [2018-11-23 11:32:30,091 INFO L273 TraceCheckUtils]: 28: Hoare triple {624#(= (bvadd |__VERIFIER_assert_#in~cond| (_ bv4294967295 32)) (_ bv0 32))} ~cond := #in~cond; {628#(= (bvadd __VERIFIER_assert_~cond (_ bv4294967295 32)) (_ bv0 32))} is VALID [2018-11-23 11:32:30,092 INFO L273 TraceCheckUtils]: 29: Hoare triple {628#(= (bvadd __VERIFIER_assert_~cond (_ bv4294967295 32)) (_ bv0 32))} assume 0bv32 == ~cond; {535#false} is VALID [2018-11-23 11:32:30,092 INFO L273 TraceCheckUtils]: 30: Hoare triple {535#false} assume !false; {535#false} is VALID [2018-11-23 11:32:30,095 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 4 proven. 2 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2018-11-23 11:32:30,095 INFO L316 TraceCheckSpWp]: Computing backward predicates... [2018-11-23 11:32:30,348 INFO L273 TraceCheckUtils]: 30: Hoare triple {535#false} assume !false; {535#false} is VALID [2018-11-23 11:32:30,351 INFO L273 TraceCheckUtils]: 29: Hoare triple {638#(not (= (_ bv0 32) __VERIFIER_assert_~cond))} assume 0bv32 == ~cond; {535#false} is VALID [2018-11-23 11:32:30,352 INFO L273 TraceCheckUtils]: 28: Hoare triple {642#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} ~cond := #in~cond; {638#(not (= (_ bv0 32) __VERIFIER_assert_~cond))} is VALID [2018-11-23 11:32:30,353 INFO L256 TraceCheckUtils]: 27: Hoare triple {646#(bvsle (_ bv0 32) main_~p~0)} call __VERIFIER_assert((if ~bvsle32(0bv32, ~p~0) then 1bv32 else 0bv32)); {642#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} is VALID [2018-11-23 11:32:30,353 INFO L273 TraceCheckUtils]: 26: Hoare triple {646#(bvsle (_ bv0 32) main_~p~0)} assume !!(~bvslt32(~i~0, ~ielen~0) && ~bvsgt32(~bufsize~0, 2bv32)); {646#(bvsle (_ bv0 32) main_~p~0)} is VALID [2018-11-23 11:32:30,354 INFO L273 TraceCheckUtils]: 25: Hoare triple {646#(bvsle (_ bv0 32) main_~p~0)} #t~post4 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post4);havoc #t~post4; {646#(bvsle (_ bv0 32) main_~p~0)} is VALID [2018-11-23 11:32:30,355 INFO L273 TraceCheckUtils]: 24: Hoare triple {656#(bvsle (_ bv0 32) (bvadd main_~p~0 (_ bv2 32)))} ~p~0 := ~bvadd32(2bv32, ~p~0); {646#(bvsle (_ bv0 32) main_~p~0)} is VALID [2018-11-23 11:32:30,355 INFO L268 TraceCheckUtils]: 23: Hoare quadruple {534#true} {656#(bvsle (_ bv0 32) (bvadd main_~p~0 (_ bv2 32)))} #80#return; {656#(bvsle (_ bv0 32) (bvadd main_~p~0 (_ bv2 32)))} is VALID [2018-11-23 11:32:30,356 INFO L273 TraceCheckUtils]: 22: Hoare triple {534#true} assume true; {534#true} is VALID [2018-11-23 11:32:30,356 INFO L273 TraceCheckUtils]: 21: Hoare triple {534#true} assume !(0bv32 == ~cond); {534#true} is VALID [2018-11-23 11:32:30,356 INFO L273 TraceCheckUtils]: 20: Hoare triple {534#true} ~cond := #in~cond; {534#true} is VALID [2018-11-23 11:32:30,357 INFO L256 TraceCheckUtils]: 19: Hoare triple {656#(bvsle (_ bv0 32) (bvadd main_~p~0 (_ bv2 32)))} call __VERIFIER_assert((if ~bvslt32(~bvadd32(1bv32, ~p~0), ~bufsize_0~0) then 1bv32 else 0bv32)); {534#true} is VALID [2018-11-23 11:32:30,357 INFO L268 TraceCheckUtils]: 18: Hoare quadruple {534#true} {656#(bvsle (_ bv0 32) (bvadd main_~p~0 (_ bv2 32)))} #78#return; {656#(bvsle (_ bv0 32) (bvadd main_~p~0 (_ bv2 32)))} is VALID [2018-11-23 11:32:30,358 INFO L273 TraceCheckUtils]: 17: Hoare triple {534#true} assume true; {534#true} is VALID [2018-11-23 11:32:30,358 INFO L273 TraceCheckUtils]: 16: Hoare triple {534#true} assume !(0bv32 == ~cond); {534#true} is VALID [2018-11-23 11:32:30,358 INFO L273 TraceCheckUtils]: 15: Hoare triple {534#true} ~cond := #in~cond; {534#true} is VALID [2018-11-23 11:32:30,358 INFO L256 TraceCheckUtils]: 14: Hoare triple {656#(bvsle (_ bv0 32) (bvadd main_~p~0 (_ bv2 32)))} call __VERIFIER_assert((if ~bvsle32(0bv32, ~p~0) then 1bv32 else 0bv32)); {534#true} is VALID [2018-11-23 11:32:30,366 INFO L273 TraceCheckUtils]: 13: Hoare triple {656#(bvsle (_ bv0 32) (bvadd main_~p~0 (_ bv2 32)))} assume !!(~bvslt32(~i~0, ~ielen~0) && ~bvsgt32(~bufsize~0, 2bv32)); {656#(bvsle (_ bv0 32) (bvadd main_~p~0 (_ bv2 32)))} is VALID [2018-11-23 11:32:30,366 INFO L273 TraceCheckUtils]: 12: Hoare triple {656#(bvsle (_ bv0 32) (bvadd main_~p~0 (_ bv2 32)))} assume !~bvslt32(~bufsize~0, ~bvmul32(2bv32, ~ielen~0));~i~0 := 0bv32; {656#(bvsle (_ bv0 32) (bvadd main_~p~0 (_ bv2 32)))} is VALID [2018-11-23 11:32:30,367 INFO L273 TraceCheckUtils]: 11: Hoare triple {696#(bvsle (_ bv0 32) (bvadd main_~leader_len~0 (_ bv2 32)))} assume !~bvslt32(~bufsize~0, ~leader_len~0);~p~0 := 0bv32;~bufsize_0~0 := ~bufsize~0;~bufsize~0 := ~bvsub32(~bufsize~0, ~leader_len~0);~p~0 := ~bvadd32(~p~0, ~leader_len~0); {656#(bvsle (_ bv0 32) (bvadd main_~p~0 (_ bv2 32)))} is VALID [2018-11-23 11:32:30,368 INFO L273 TraceCheckUtils]: 10: Hoare triple {696#(bvsle (_ bv0 32) (bvadd main_~leader_len~0 (_ bv2 32)))} assume ~bvsgt32(~ielen~0, 0bv32); {696#(bvsle (_ bv0 32) (bvadd main_~leader_len~0 (_ bv2 32)))} is VALID [2018-11-23 11:32:30,368 INFO L273 TraceCheckUtils]: 9: Hoare triple {696#(bvsle (_ bv0 32) (bvadd main_~leader_len~0 (_ bv2 32)))} assume ~bvsgt32(~bufsize~0, 0bv32); {696#(bvsle (_ bv0 32) (bvadd main_~leader_len~0 (_ bv2 32)))} is VALID [2018-11-23 11:32:30,369 INFO L273 TraceCheckUtils]: 8: Hoare triple {706#(or (not (bvsgt main_~leader_len~0 (_ bv0 32))) (bvsle (_ bv0 32) (bvadd main_~leader_len~0 (_ bv2 32))))} assume ~bvsgt32(~leader_len~0, 0bv32); {696#(bvsle (_ bv0 32) (bvadd main_~leader_len~0 (_ bv2 32)))} is VALID [2018-11-23 11:32:30,369 INFO L273 TraceCheckUtils]: 7: Hoare triple {706#(or (not (bvsgt main_~leader_len~0 (_ bv0 32))) (bvsle (_ bv0 32) (bvadd main_~leader_len~0 (_ bv2 32))))} assume !!~bvslt32(~ielen~0, 1000000bv32); {706#(or (not (bvsgt main_~leader_len~0 (_ bv0 32))) (bvsle (_ bv0 32) (bvadd main_~leader_len~0 (_ bv2 32))))} is VALID [2018-11-23 11:32:30,370 INFO L273 TraceCheckUtils]: 6: Hoare triple {706#(or (not (bvsgt main_~leader_len~0 (_ bv0 32))) (bvsle (_ bv0 32) (bvadd main_~leader_len~0 (_ bv2 32))))} assume !!~bvslt32(~bufsize~0, 1000000bv32); {706#(or (not (bvsgt main_~leader_len~0 (_ bv0 32))) (bvsle (_ bv0 32) (bvadd main_~leader_len~0 (_ bv2 32))))} is VALID [2018-11-23 11:32:30,371 INFO L273 TraceCheckUtils]: 5: Hoare triple {534#true} assume !!~bvslt32(~leader_len~0, 1000000bv32); {706#(or (not (bvsgt main_~leader_len~0 (_ bv0 32))) (bvsle (_ bv0 32) (bvadd main_~leader_len~0 (_ bv2 32))))} is VALID [2018-11-23 11:32:30,371 INFO L273 TraceCheckUtils]: 4: Hoare triple {534#true} havoc ~p~0;havoc ~i~0;havoc ~leader_len~0;havoc ~bufsize~0;havoc ~bufsize_0~0;havoc ~ielen~0;~leader_len~0 := #t~nondet1;havoc #t~nondet1;~bufsize~0 := #t~nondet2;havoc #t~nondet2;~ielen~0 := #t~nondet3;havoc #t~nondet3; {534#true} is VALID [2018-11-23 11:32:30,371 INFO L256 TraceCheckUtils]: 3: Hoare triple {534#true} call #t~ret5 := main(); {534#true} is VALID [2018-11-23 11:32:30,372 INFO L268 TraceCheckUtils]: 2: Hoare quadruple {534#true} {534#true} #74#return; {534#true} is VALID [2018-11-23 11:32:30,372 INFO L273 TraceCheckUtils]: 1: Hoare triple {534#true} assume true; {534#true} is VALID [2018-11-23 11:32:30,373 INFO L256 TraceCheckUtils]: 0: Hoare triple {534#true} call ULTIMATE.init(); {534#true} is VALID [2018-11-23 11:32:30,375 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 4 proven. 2 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2018-11-23 11:32:30,377 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 11:32:30,378 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 14 [2018-11-23 11:32:30,378 INFO L78 Accepts]: Start accepts. Automaton has 14 states. Word has length 31 [2018-11-23 11:32:30,379 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 11:32:30,379 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 14 states. [2018-11-23 11:32:30,489 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-23 11:32:30,489 INFO L459 AbstractCegarLoop]: Interpolant automaton has 14 states [2018-11-23 11:32:30,490 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2018-11-23 11:32:30,490 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=36, Invalid=146, Unknown=0, NotChecked=0, Total=182 [2018-11-23 11:32:30,490 INFO L87 Difference]: Start difference. First operand 35 states and 36 transitions. Second operand 14 states. [2018-11-23 11:32:31,902 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 11:32:31,903 INFO L93 Difference]: Finished difference Result 57 states and 63 transitions. [2018-11-23 11:32:31,903 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2018-11-23 11:32:31,903 INFO L78 Accepts]: Start accepts. Automaton has 14 states. Word has length 31 [2018-11-23 11:32:31,904 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 11:32:31,904 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 14 states. [2018-11-23 11:32:31,908 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 57 transitions. [2018-11-23 11:32:31,909 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 14 states. [2018-11-23 11:32:31,913 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 57 transitions. [2018-11-23 11:32:31,913 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states and 57 transitions. [2018-11-23 11:32:32,068 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 57 edges. 57 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 11:32:32,070 INFO L225 Difference]: With dead ends: 57 [2018-11-23 11:32:32,071 INFO L226 Difference]: Without dead ends: 55 [2018-11-23 11:32:32,071 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 66 GetRequests, 49 SyntacticMatches, 0 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 35 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=80, Invalid=262, Unknown=0, NotChecked=0, Total=342 [2018-11-23 11:32:32,072 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 55 states. [2018-11-23 11:32:32,128 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 55 to 53. [2018-11-23 11:32:32,128 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 11:32:32,129 INFO L82 GeneralOperation]: Start isEquivalent. First operand 55 states. Second operand 53 states. [2018-11-23 11:32:32,129 INFO L74 IsIncluded]: Start isIncluded. First operand 55 states. Second operand 53 states. [2018-11-23 11:32:32,129 INFO L87 Difference]: Start difference. First operand 55 states. Second operand 53 states. [2018-11-23 11:32:32,135 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 11:32:32,135 INFO L93 Difference]: Finished difference Result 55 states and 61 transitions. [2018-11-23 11:32:32,135 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 61 transitions. [2018-11-23 11:32:32,136 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 11:32:32,137 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 11:32:32,137 INFO L74 IsIncluded]: Start isIncluded. First operand 53 states. Second operand 55 states. [2018-11-23 11:32:32,137 INFO L87 Difference]: Start difference. First operand 53 states. Second operand 55 states. [2018-11-23 11:32:32,141 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 11:32:32,141 INFO L93 Difference]: Finished difference Result 55 states and 61 transitions. [2018-11-23 11:32:32,142 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 61 transitions. [2018-11-23 11:32:32,143 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 11:32:32,143 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 11:32:32,143 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 11:32:32,143 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 11:32:32,144 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 53 states. [2018-11-23 11:32:32,147 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 53 states to 53 states and 58 transitions. [2018-11-23 11:32:32,148 INFO L78 Accepts]: Start accepts. Automaton has 53 states and 58 transitions. Word has length 31 [2018-11-23 11:32:32,148 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 11:32:32,148 INFO L480 AbstractCegarLoop]: Abstraction has 53 states and 58 transitions. [2018-11-23 11:32:32,148 INFO L481 AbstractCegarLoop]: Interpolant automaton has 14 states. [2018-11-23 11:32:32,148 INFO L276 IsEmpty]: Start isEmpty. Operand 53 states and 58 transitions. [2018-11-23 11:32:32,150 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 37 [2018-11-23 11:32:32,150 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 11:32:32,150 INFO L402 BasicCegarLoop]: trace histogram [4, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 11:32:32,150 INFO L423 AbstractCegarLoop]: === Iteration 4 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 11:32:32,151 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 11:32:32,151 INFO L82 PathProgramCache]: Analyzing trace with hash 1089945877, now seen corresponding path program 2 times [2018-11-23 11:32:32,152 INFO L223 ckRefinementStrategy]: Switched to mode CVC4_FPBP [2018-11-23 11:32:32,152 INFO L69 tionRefinementEngine]: Using refinement strategy WolfRefinementStrategy No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4nyu Starting monitored process 5 with cvc4nyu --tear-down-incremental --print-success --lang smt --rewrite-divk (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 5 with cvc4nyu --tear-down-incremental --print-success --lang smt --rewrite-divk [2018-11-23 11:32:32,169 INFO L101 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2018-11-23 11:32:32,246 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-23 11:32:32,246 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 11:32:32,305 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 11:32:32,307 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 11:32:33,725 INFO L256 TraceCheckUtils]: 0: Hoare triple {1008#true} call ULTIMATE.init(); {1008#true} is VALID [2018-11-23 11:32:33,726 INFO L273 TraceCheckUtils]: 1: Hoare triple {1008#true} assume true; {1008#true} is VALID [2018-11-23 11:32:33,726 INFO L268 TraceCheckUtils]: 2: Hoare quadruple {1008#true} {1008#true} #74#return; {1008#true} is VALID [2018-11-23 11:32:33,727 INFO L256 TraceCheckUtils]: 3: Hoare triple {1008#true} call #t~ret5 := main(); {1008#true} is VALID [2018-11-23 11:32:33,727 INFO L273 TraceCheckUtils]: 4: Hoare triple {1008#true} havoc ~p~0;havoc ~i~0;havoc ~leader_len~0;havoc ~bufsize~0;havoc ~bufsize_0~0;havoc ~ielen~0;~leader_len~0 := #t~nondet1;havoc #t~nondet1;~bufsize~0 := #t~nondet2;havoc #t~nondet2;~ielen~0 := #t~nondet3;havoc #t~nondet3; {1008#true} is VALID [2018-11-23 11:32:33,732 INFO L273 TraceCheckUtils]: 5: Hoare triple {1008#true} assume !!~bvslt32(~leader_len~0, 1000000bv32); {1028#(bvslt main_~leader_len~0 (_ bv1000000 32))} is VALID [2018-11-23 11:32:33,733 INFO L273 TraceCheckUtils]: 6: Hoare triple {1028#(bvslt main_~leader_len~0 (_ bv1000000 32))} assume !!~bvslt32(~bufsize~0, 1000000bv32); {1032#(and (bvslt main_~bufsize~0 (_ bv1000000 32)) (bvslt main_~leader_len~0 (_ bv1000000 32)))} is VALID [2018-11-23 11:32:33,734 INFO L273 TraceCheckUtils]: 7: Hoare triple {1032#(and (bvslt main_~bufsize~0 (_ bv1000000 32)) (bvslt main_~leader_len~0 (_ bv1000000 32)))} assume !!~bvslt32(~ielen~0, 1000000bv32); {1036#(and (bvslt main_~bufsize~0 (_ bv1000000 32)) (bvslt main_~leader_len~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)))} is VALID [2018-11-23 11:32:33,735 INFO L273 TraceCheckUtils]: 8: Hoare triple {1036#(and (bvslt main_~bufsize~0 (_ bv1000000 32)) (bvslt main_~leader_len~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)))} assume ~bvsgt32(~leader_len~0, 0bv32); {1040#(and (bvslt main_~bufsize~0 (_ bv1000000 32)) (bvslt main_~leader_len~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~leader_len~0 (_ bv0 32)))} is VALID [2018-11-23 11:32:33,735 INFO L273 TraceCheckUtils]: 9: Hoare triple {1040#(and (bvslt main_~bufsize~0 (_ bv1000000 32)) (bvslt main_~leader_len~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~leader_len~0 (_ bv0 32)))} assume ~bvsgt32(~bufsize~0, 0bv32); {1044#(and (bvsgt main_~bufsize~0 (_ bv0 32)) (bvslt main_~bufsize~0 (_ bv1000000 32)) (bvslt main_~leader_len~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~leader_len~0 (_ bv0 32)))} is VALID [2018-11-23 11:32:33,736 INFO L273 TraceCheckUtils]: 10: Hoare triple {1044#(and (bvsgt main_~bufsize~0 (_ bv0 32)) (bvslt main_~bufsize~0 (_ bv1000000 32)) (bvslt main_~leader_len~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~leader_len~0 (_ bv0 32)))} assume ~bvsgt32(~ielen~0, 0bv32); {1048#(and (bvsgt main_~bufsize~0 (_ bv0 32)) (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt main_~bufsize~0 (_ bv1000000 32)) (bvslt main_~leader_len~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~leader_len~0 (_ bv0 32)))} is VALID [2018-11-23 11:32:33,738 INFO L273 TraceCheckUtils]: 11: Hoare triple {1048#(and (bvsgt main_~bufsize~0 (_ bv0 32)) (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt main_~bufsize~0 (_ bv1000000 32)) (bvslt main_~leader_len~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~leader_len~0 (_ bv0 32)))} assume !~bvslt32(~bufsize~0, ~leader_len~0);~p~0 := 0bv32;~bufsize_0~0 := ~bufsize~0;~bufsize~0 := ~bvsub32(~bufsize~0, ~leader_len~0);~p~0 := ~bvadd32(~p~0, ~leader_len~0); {1052#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt main_~bufsize_0~0 main_~p~0)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~p~0 (_ bv0 32)) (= main_~bufsize~0 (bvadd (bvneg main_~p~0) main_~bufsize_0~0)))} is VALID [2018-11-23 11:32:33,740 INFO L273 TraceCheckUtils]: 12: Hoare triple {1052#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt main_~bufsize_0~0 main_~p~0)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~p~0 (_ bv0 32)) (= main_~bufsize~0 (bvadd (bvneg main_~p~0) main_~bufsize_0~0)))} assume !~bvslt32(~bufsize~0, ~bvmul32(2bv32, ~ielen~0));~i~0 := 0bv32; {1056#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt main_~bufsize~0 (bvmul (_ bv2 32) main_~ielen~0))) (not (bvslt main_~bufsize_0~0 main_~p~0)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (= main_~i~0 (_ bv0 32)) (bvsgt main_~p~0 (_ bv0 32)) (= main_~bufsize~0 (bvadd (bvneg main_~p~0) main_~bufsize_0~0)))} is VALID [2018-11-23 11:32:33,741 INFO L273 TraceCheckUtils]: 13: Hoare triple {1056#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt main_~bufsize~0 (bvmul (_ bv2 32) main_~ielen~0))) (not (bvslt main_~bufsize_0~0 main_~p~0)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (= main_~i~0 (_ bv0 32)) (bvsgt main_~p~0 (_ bv0 32)) (= main_~bufsize~0 (bvadd (bvneg main_~p~0) main_~bufsize_0~0)))} assume !!(~bvslt32(~i~0, ~ielen~0) && ~bvsgt32(~bufsize~0, 2bv32)); {1056#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt main_~bufsize~0 (bvmul (_ bv2 32) main_~ielen~0))) (not (bvslt main_~bufsize_0~0 main_~p~0)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (= main_~i~0 (_ bv0 32)) (bvsgt main_~p~0 (_ bv0 32)) (= main_~bufsize~0 (bvadd (bvneg main_~p~0) main_~bufsize_0~0)))} is VALID [2018-11-23 11:32:33,741 INFO L256 TraceCheckUtils]: 14: Hoare triple {1056#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt main_~bufsize~0 (bvmul (_ bv2 32) main_~ielen~0))) (not (bvslt main_~bufsize_0~0 main_~p~0)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (= main_~i~0 (_ bv0 32)) (bvsgt main_~p~0 (_ bv0 32)) (= main_~bufsize~0 (bvadd (bvneg main_~p~0) main_~bufsize_0~0)))} call __VERIFIER_assert((if ~bvsle32(0bv32, ~p~0) then 1bv32 else 0bv32)); {1008#true} is VALID [2018-11-23 11:32:33,742 INFO L273 TraceCheckUtils]: 15: Hoare triple {1008#true} ~cond := #in~cond; {1008#true} is VALID [2018-11-23 11:32:33,742 INFO L273 TraceCheckUtils]: 16: Hoare triple {1008#true} assume !(0bv32 == ~cond); {1008#true} is VALID [2018-11-23 11:32:33,743 INFO L273 TraceCheckUtils]: 17: Hoare triple {1008#true} assume true; {1008#true} is VALID [2018-11-23 11:32:33,759 INFO L268 TraceCheckUtils]: 18: Hoare quadruple {1008#true} {1056#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt main_~bufsize~0 (bvmul (_ bv2 32) main_~ielen~0))) (not (bvslt main_~bufsize_0~0 main_~p~0)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (= main_~i~0 (_ bv0 32)) (bvsgt main_~p~0 (_ bv0 32)) (= main_~bufsize~0 (bvadd (bvneg main_~p~0) main_~bufsize_0~0)))} #78#return; {1056#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt main_~bufsize~0 (bvmul (_ bv2 32) main_~ielen~0))) (not (bvslt main_~bufsize_0~0 main_~p~0)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (= main_~i~0 (_ bv0 32)) (bvsgt main_~p~0 (_ bv0 32)) (= main_~bufsize~0 (bvadd (bvneg main_~p~0) main_~bufsize_0~0)))} is VALID [2018-11-23 11:32:33,759 INFO L256 TraceCheckUtils]: 19: Hoare triple {1056#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt main_~bufsize~0 (bvmul (_ bv2 32) main_~ielen~0))) (not (bvslt main_~bufsize_0~0 main_~p~0)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (= main_~i~0 (_ bv0 32)) (bvsgt main_~p~0 (_ bv0 32)) (= main_~bufsize~0 (bvadd (bvneg main_~p~0) main_~bufsize_0~0)))} call __VERIFIER_assert((if ~bvslt32(~bvadd32(1bv32, ~p~0), ~bufsize_0~0) then 1bv32 else 0bv32)); {1008#true} is VALID [2018-11-23 11:32:33,761 INFO L273 TraceCheckUtils]: 20: Hoare triple {1008#true} ~cond := #in~cond; {1081#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2018-11-23 11:32:33,761 INFO L273 TraceCheckUtils]: 21: Hoare triple {1081#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0bv32 == ~cond); {1085#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} is VALID [2018-11-23 11:32:33,762 INFO L273 TraceCheckUtils]: 22: Hoare triple {1085#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} assume true; {1085#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} is VALID [2018-11-23 11:32:33,763 INFO L268 TraceCheckUtils]: 23: Hoare quadruple {1085#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} {1056#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt main_~bufsize~0 (bvmul (_ bv2 32) main_~ielen~0))) (not (bvslt main_~bufsize_0~0 main_~p~0)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (= main_~i~0 (_ bv0 32)) (bvsgt main_~p~0 (_ bv0 32)) (= main_~bufsize~0 (bvadd (bvneg main_~p~0) main_~bufsize_0~0)))} #80#return; {1056#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt main_~bufsize~0 (bvmul (_ bv2 32) main_~ielen~0))) (not (bvslt main_~bufsize_0~0 main_~p~0)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (= main_~i~0 (_ bv0 32)) (bvsgt main_~p~0 (_ bv0 32)) (= main_~bufsize~0 (bvadd (bvneg main_~p~0) main_~bufsize_0~0)))} is VALID [2018-11-23 11:32:34,078 INFO L273 TraceCheckUtils]: 24: Hoare triple {1056#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt main_~bufsize~0 (bvmul (_ bv2 32) main_~ielen~0))) (not (bvslt main_~bufsize_0~0 main_~p~0)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (= main_~i~0 (_ bv0 32)) (bvsgt main_~p~0 (_ bv0 32)) (= main_~bufsize~0 (bvadd (bvneg main_~p~0) main_~bufsize_0~0)))} ~p~0 := ~bvadd32(2bv32, ~p~0); {1095#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt main_~bufsize~0 (bvmul (_ bv2 32) main_~ielen~0))) (not (bvslt main_~bufsize_0~0 (bvadd main_~p~0 (_ bv4294967294 32)))) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv0 32)) (= main_~bufsize~0 (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967294 32))) main_~bufsize_0~0)) (= main_~i~0 (_ bv0 32)))} is VALID [2018-11-23 11:32:34,082 INFO L273 TraceCheckUtils]: 25: Hoare triple {1095#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt main_~bufsize~0 (bvmul (_ bv2 32) main_~ielen~0))) (not (bvslt main_~bufsize_0~0 (bvadd main_~p~0 (_ bv4294967294 32)))) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv0 32)) (= main_~bufsize~0 (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967294 32))) main_~bufsize_0~0)) (= main_~i~0 (_ bv0 32)))} #t~post4 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post4);havoc #t~post4; {1099#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt main_~bufsize~0 (bvmul (_ bv2 32) main_~ielen~0))) (not (bvslt main_~bufsize_0~0 (bvadd main_~p~0 (_ bv4294967294 32)))) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv0 32)) (= main_~bufsize~0 (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967294 32))) main_~bufsize_0~0)) (= (bvadd main_~i~0 (_ bv4294967295 32)) (_ bv0 32)))} is VALID [2018-11-23 11:32:34,086 INFO L273 TraceCheckUtils]: 26: Hoare triple {1099#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt main_~bufsize~0 (bvmul (_ bv2 32) main_~ielen~0))) (not (bvslt main_~bufsize_0~0 (bvadd main_~p~0 (_ bv4294967294 32)))) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv0 32)) (= main_~bufsize~0 (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967294 32))) main_~bufsize_0~0)) (= (bvadd main_~i~0 (_ bv4294967295 32)) (_ bv0 32)))} assume !!(~bvslt32(~i~0, ~ielen~0) && ~bvsgt32(~bufsize~0, 2bv32)); {1103#(and (exists ((main_~ielen~0 (_ BitVec 32))) (and (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt (_ bv1 32) main_~ielen~0) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967294 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~ielen~0 (_ bv1000000 32)))) (not (bvslt main_~bufsize_0~0 (bvadd main_~p~0 (_ bv4294967294 32)))) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv0 32)))} is VALID [2018-11-23 11:32:34,087 INFO L256 TraceCheckUtils]: 27: Hoare triple {1103#(and (exists ((main_~ielen~0 (_ BitVec 32))) (and (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt (_ bv1 32) main_~ielen~0) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967294 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~ielen~0 (_ bv1000000 32)))) (not (bvslt main_~bufsize_0~0 (bvadd main_~p~0 (_ bv4294967294 32)))) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv0 32)))} call __VERIFIER_assert((if ~bvsle32(0bv32, ~p~0) then 1bv32 else 0bv32)); {1008#true} is VALID [2018-11-23 11:32:34,087 INFO L273 TraceCheckUtils]: 28: Hoare triple {1008#true} ~cond := #in~cond; {1008#true} is VALID [2018-11-23 11:32:34,087 INFO L273 TraceCheckUtils]: 29: Hoare triple {1008#true} assume !(0bv32 == ~cond); {1008#true} is VALID [2018-11-23 11:32:34,087 INFO L273 TraceCheckUtils]: 30: Hoare triple {1008#true} assume true; {1008#true} is VALID [2018-11-23 11:32:34,088 INFO L268 TraceCheckUtils]: 31: Hoare quadruple {1008#true} {1103#(and (exists ((main_~ielen~0 (_ BitVec 32))) (and (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt (_ bv1 32) main_~ielen~0) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967294 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~ielen~0 (_ bv1000000 32)))) (not (bvslt main_~bufsize_0~0 (bvadd main_~p~0 (_ bv4294967294 32)))) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv0 32)))} #78#return; {1103#(and (exists ((main_~ielen~0 (_ BitVec 32))) (and (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt (_ bv1 32) main_~ielen~0) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967294 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~ielen~0 (_ bv1000000 32)))) (not (bvslt main_~bufsize_0~0 (bvadd main_~p~0 (_ bv4294967294 32)))) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv0 32)))} is VALID [2018-11-23 11:32:34,135 INFO L256 TraceCheckUtils]: 32: Hoare triple {1103#(and (exists ((main_~ielen~0 (_ BitVec 32))) (and (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt (_ bv1 32) main_~ielen~0) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967294 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~ielen~0 (_ bv1000000 32)))) (not (bvslt main_~bufsize_0~0 (bvadd main_~p~0 (_ bv4294967294 32)))) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv0 32)))} call __VERIFIER_assert((if ~bvslt32(~bvadd32(1bv32, ~p~0), ~bufsize_0~0) then 1bv32 else 0bv32)); {1122#(= (bvadd |__VERIFIER_assert_#in~cond| (_ bv4294967295 32)) (_ bv0 32))} is VALID [2018-11-23 11:32:34,136 INFO L273 TraceCheckUtils]: 33: Hoare triple {1122#(= (bvadd |__VERIFIER_assert_#in~cond| (_ bv4294967295 32)) (_ bv0 32))} ~cond := #in~cond; {1126#(= (bvadd __VERIFIER_assert_~cond (_ bv4294967295 32)) (_ bv0 32))} is VALID [2018-11-23 11:32:34,137 INFO L273 TraceCheckUtils]: 34: Hoare triple {1126#(= (bvadd __VERIFIER_assert_~cond (_ bv4294967295 32)) (_ bv0 32))} assume 0bv32 == ~cond; {1009#false} is VALID [2018-11-23 11:32:34,137 INFO L273 TraceCheckUtils]: 35: Hoare triple {1009#false} assume !false; {1009#false} is VALID [2018-11-23 11:32:34,143 INFO L134 CoverageAnalysis]: Checked inductivity of 21 backedges. 8 proven. 7 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2018-11-23 11:32:34,143 INFO L316 TraceCheckSpWp]: Computing backward predicates... [2018-11-23 11:32:38,614 WARN L180 SmtUtils]: Spent 241.00 ms on a formula simplification. DAG size of input: 21 DAG size of output: 18 [2018-11-23 11:32:39,734 WARN L180 SmtUtils]: Spent 219.00 ms on a formula simplification. DAG size of input: 21 DAG size of output: 20 [2018-11-23 11:32:40,148 INFO L273 TraceCheckUtils]: 35: Hoare triple {1009#false} assume !false; {1009#false} is VALID [2018-11-23 11:32:40,149 INFO L273 TraceCheckUtils]: 34: Hoare triple {1136#(not (= (_ bv0 32) __VERIFIER_assert_~cond))} assume 0bv32 == ~cond; {1009#false} is VALID [2018-11-23 11:32:40,149 INFO L273 TraceCheckUtils]: 33: Hoare triple {1085#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} ~cond := #in~cond; {1136#(not (= (_ bv0 32) __VERIFIER_assert_~cond))} is VALID [2018-11-23 11:32:40,150 INFO L256 TraceCheckUtils]: 32: Hoare triple {1143#(bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)} call __VERIFIER_assert((if ~bvslt32(~bvadd32(1bv32, ~p~0), ~bufsize_0~0) then 1bv32 else 0bv32)); {1085#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} is VALID [2018-11-23 11:32:40,151 INFO L268 TraceCheckUtils]: 31: Hoare quadruple {1008#true} {1143#(bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)} #78#return; {1143#(bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)} is VALID [2018-11-23 11:32:40,151 INFO L273 TraceCheckUtils]: 30: Hoare triple {1008#true} assume true; {1008#true} is VALID [2018-11-23 11:32:40,152 INFO L273 TraceCheckUtils]: 29: Hoare triple {1008#true} assume !(0bv32 == ~cond); {1008#true} is VALID [2018-11-23 11:32:40,152 INFO L273 TraceCheckUtils]: 28: Hoare triple {1008#true} ~cond := #in~cond; {1008#true} is VALID [2018-11-23 11:32:40,153 INFO L256 TraceCheckUtils]: 27: Hoare triple {1143#(bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)} call __VERIFIER_assert((if ~bvsle32(0bv32, ~p~0) then 1bv32 else 0bv32)); {1008#true} is VALID [2018-11-23 11:32:40,156 INFO L273 TraceCheckUtils]: 26: Hoare triple {1162#(or (not (bvslt main_~i~0 main_~ielen~0)) (not (bvsgt main_~bufsize~0 (_ bv2 32))) (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0))} assume !!(~bvslt32(~i~0, ~ielen~0) && ~bvsgt32(~bufsize~0, 2bv32)); {1143#(bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)} is VALID [2018-11-23 11:32:40,158 INFO L273 TraceCheckUtils]: 25: Hoare triple {1166#(or (not (bvsgt main_~bufsize~0 (_ bv2 32))) (not (bvslt (bvadd main_~i~0 (_ bv1 32)) main_~ielen~0)) (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0))} #t~post4 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post4);havoc #t~post4; {1162#(or (not (bvslt main_~i~0 main_~ielen~0)) (not (bvsgt main_~bufsize~0 (_ bv2 32))) (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0))} is VALID [2018-11-23 11:32:40,184 INFO L273 TraceCheckUtils]: 24: Hoare triple {1170#(or (not (bvsgt main_~bufsize~0 (_ bv2 32))) (not (bvslt (bvadd main_~i~0 (_ bv1 32)) main_~ielen~0)) (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0))} ~p~0 := ~bvadd32(2bv32, ~p~0); {1166#(or (not (bvsgt main_~bufsize~0 (_ bv2 32))) (not (bvslt (bvadd main_~i~0 (_ bv1 32)) main_~ielen~0)) (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0))} is VALID [2018-11-23 11:32:40,187 INFO L268 TraceCheckUtils]: 23: Hoare quadruple {1085#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} {1174#(or (not (bvsgt main_~bufsize~0 (_ bv2 32))) (not (bvslt (bvadd main_~i~0 (_ bv1 32)) main_~ielen~0)) (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} #80#return; {1170#(or (not (bvsgt main_~bufsize~0 (_ bv2 32))) (not (bvslt (bvadd main_~i~0 (_ bv1 32)) main_~ielen~0)) (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0))} is VALID [2018-11-23 11:32:40,188 INFO L273 TraceCheckUtils]: 22: Hoare triple {1085#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} assume true; {1085#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} is VALID [2018-11-23 11:32:40,189 INFO L273 TraceCheckUtils]: 21: Hoare triple {1184#(or (= (_ bv0 32) __VERIFIER_assert_~cond) (not (= |__VERIFIER_assert_#in~cond| (_ bv0 32))))} assume !(0bv32 == ~cond); {1085#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} is VALID [2018-11-23 11:32:40,189 INFO L273 TraceCheckUtils]: 20: Hoare triple {1008#true} ~cond := #in~cond; {1184#(or (= (_ bv0 32) __VERIFIER_assert_~cond) (not (= |__VERIFIER_assert_#in~cond| (_ bv0 32))))} is VALID [2018-11-23 11:32:40,190 INFO L256 TraceCheckUtils]: 19: Hoare triple {1174#(or (not (bvsgt main_~bufsize~0 (_ bv2 32))) (not (bvslt (bvadd main_~i~0 (_ bv1 32)) main_~ielen~0)) (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} call __VERIFIER_assert((if ~bvslt32(~bvadd32(1bv32, ~p~0), ~bufsize_0~0) then 1bv32 else 0bv32)); {1008#true} is VALID [2018-11-23 11:32:40,190 INFO L268 TraceCheckUtils]: 18: Hoare quadruple {1008#true} {1174#(or (not (bvsgt main_~bufsize~0 (_ bv2 32))) (not (bvslt (bvadd main_~i~0 (_ bv1 32)) main_~ielen~0)) (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} #78#return; {1174#(or (not (bvsgt main_~bufsize~0 (_ bv2 32))) (not (bvslt (bvadd main_~i~0 (_ bv1 32)) main_~ielen~0)) (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} is VALID [2018-11-23 11:32:40,190 INFO L273 TraceCheckUtils]: 17: Hoare triple {1008#true} assume true; {1008#true} is VALID [2018-11-23 11:32:40,191 INFO L273 TraceCheckUtils]: 16: Hoare triple {1008#true} assume !(0bv32 == ~cond); {1008#true} is VALID [2018-11-23 11:32:40,191 INFO L273 TraceCheckUtils]: 15: Hoare triple {1008#true} ~cond := #in~cond; {1008#true} is VALID [2018-11-23 11:32:40,191 INFO L256 TraceCheckUtils]: 14: Hoare triple {1174#(or (not (bvsgt main_~bufsize~0 (_ bv2 32))) (not (bvslt (bvadd main_~i~0 (_ bv1 32)) main_~ielen~0)) (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} call __VERIFIER_assert((if ~bvsle32(0bv32, ~p~0) then 1bv32 else 0bv32)); {1008#true} is VALID [2018-11-23 11:32:40,191 INFO L273 TraceCheckUtils]: 13: Hoare triple {1174#(or (not (bvsgt main_~bufsize~0 (_ bv2 32))) (not (bvslt (bvadd main_~i~0 (_ bv1 32)) main_~ielen~0)) (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} assume !!(~bvslt32(~i~0, ~ielen~0) && ~bvsgt32(~bufsize~0, 2bv32)); {1174#(or (not (bvsgt main_~bufsize~0 (_ bv2 32))) (not (bvslt (bvadd main_~i~0 (_ bv1 32)) main_~ielen~0)) (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} is VALID [2018-11-23 11:32:40,192 INFO L273 TraceCheckUtils]: 12: Hoare triple {1209#(or (bvslt main_~bufsize~0 (bvmul (_ bv2 32) main_~ielen~0)) (not (bvsgt main_~bufsize~0 (_ bv2 32))) (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0) (not (bvslt (_ bv1 32) main_~ielen~0)) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} assume !~bvslt32(~bufsize~0, ~bvmul32(2bv32, ~ielen~0));~i~0 := 0bv32; {1174#(or (not (bvsgt main_~bufsize~0 (_ bv2 32))) (not (bvslt (bvadd main_~i~0 (_ bv1 32)) main_~ielen~0)) (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} is VALID [2018-11-23 11:32:40,196 INFO L273 TraceCheckUtils]: 11: Hoare triple {1213#(or (bvslt main_~bufsize~0 main_~leader_len~0) (not (bvsgt (bvadd (bvneg main_~leader_len~0) main_~bufsize~0) (_ bv2 32))) (bvslt (bvadd (bvneg main_~leader_len~0) main_~bufsize~0) (bvmul (_ bv2 32) main_~ielen~0)) (bvslt (bvadd main_~leader_len~0 (_ bv3 32)) main_~bufsize~0) (not (bvslt (_ bv1 32) main_~ielen~0)))} assume !~bvslt32(~bufsize~0, ~leader_len~0);~p~0 := 0bv32;~bufsize_0~0 := ~bufsize~0;~bufsize~0 := ~bvsub32(~bufsize~0, ~leader_len~0);~p~0 := ~bvadd32(~p~0, ~leader_len~0); {1209#(or (bvslt main_~bufsize~0 (bvmul (_ bv2 32) main_~ielen~0)) (not (bvsgt main_~bufsize~0 (_ bv2 32))) (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0) (not (bvslt (_ bv1 32) main_~ielen~0)) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} is VALID [2018-11-23 11:32:40,197 INFO L273 TraceCheckUtils]: 10: Hoare triple {1213#(or (bvslt main_~bufsize~0 main_~leader_len~0) (not (bvsgt (bvadd (bvneg main_~leader_len~0) main_~bufsize~0) (_ bv2 32))) (bvslt (bvadd (bvneg main_~leader_len~0) main_~bufsize~0) (bvmul (_ bv2 32) main_~ielen~0)) (bvslt (bvadd main_~leader_len~0 (_ bv3 32)) main_~bufsize~0) (not (bvslt (_ bv1 32) main_~ielen~0)))} assume ~bvsgt32(~ielen~0, 0bv32); {1213#(or (bvslt main_~bufsize~0 main_~leader_len~0) (not (bvsgt (bvadd (bvneg main_~leader_len~0) main_~bufsize~0) (_ bv2 32))) (bvslt (bvadd (bvneg main_~leader_len~0) main_~bufsize~0) (bvmul (_ bv2 32) main_~ielen~0)) (bvslt (bvadd main_~leader_len~0 (_ bv3 32)) main_~bufsize~0) (not (bvslt (_ bv1 32) main_~ielen~0)))} is VALID [2018-11-23 11:32:40,197 INFO L273 TraceCheckUtils]: 9: Hoare triple {1220#(or (not (bvsgt (bvadd (bvneg main_~leader_len~0) main_~bufsize~0) (_ bv2 32))) (bvslt (bvadd (bvneg main_~leader_len~0) main_~bufsize~0) (bvmul (_ bv2 32) main_~ielen~0)) (bvslt (bvadd main_~leader_len~0 (_ bv3 32)) main_~bufsize~0) (not (bvsgt main_~bufsize~0 (_ bv0 32))) (not (bvslt (_ bv1 32) main_~ielen~0)))} assume ~bvsgt32(~bufsize~0, 0bv32); {1213#(or (bvslt main_~bufsize~0 main_~leader_len~0) (not (bvsgt (bvadd (bvneg main_~leader_len~0) main_~bufsize~0) (_ bv2 32))) (bvslt (bvadd (bvneg main_~leader_len~0) main_~bufsize~0) (bvmul (_ bv2 32) main_~ielen~0)) (bvslt (bvadd main_~leader_len~0 (_ bv3 32)) main_~bufsize~0) (not (bvslt (_ bv1 32) main_~ielen~0)))} is VALID [2018-11-23 11:32:40,198 INFO L273 TraceCheckUtils]: 8: Hoare triple {1224#(or (not (bvsgt (bvadd (bvneg main_~leader_len~0) main_~bufsize~0) (_ bv2 32))) (not (bvsgt main_~leader_len~0 (_ bv0 32))) (bvslt (bvadd (bvneg main_~leader_len~0) main_~bufsize~0) (bvmul (_ bv2 32) main_~ielen~0)) (bvslt (bvadd main_~leader_len~0 (_ bv3 32)) main_~bufsize~0) (not (bvsgt main_~bufsize~0 (_ bv0 32))) (not (bvslt (_ bv1 32) main_~ielen~0)))} assume ~bvsgt32(~leader_len~0, 0bv32); {1220#(or (not (bvsgt (bvadd (bvneg main_~leader_len~0) main_~bufsize~0) (_ bv2 32))) (bvslt (bvadd (bvneg main_~leader_len~0) main_~bufsize~0) (bvmul (_ bv2 32) main_~ielen~0)) (bvslt (bvadd main_~leader_len~0 (_ bv3 32)) main_~bufsize~0) (not (bvsgt main_~bufsize~0 (_ bv0 32))) (not (bvslt (_ bv1 32) main_~ielen~0)))} is VALID [2018-11-23 11:32:40,234 INFO L273 TraceCheckUtils]: 7: Hoare triple {1008#true} assume !!~bvslt32(~ielen~0, 1000000bv32); {1224#(or (not (bvsgt (bvadd (bvneg main_~leader_len~0) main_~bufsize~0) (_ bv2 32))) (not (bvsgt main_~leader_len~0 (_ bv0 32))) (bvslt (bvadd (bvneg main_~leader_len~0) main_~bufsize~0) (bvmul (_ bv2 32) main_~ielen~0)) (bvslt (bvadd main_~leader_len~0 (_ bv3 32)) main_~bufsize~0) (not (bvsgt main_~bufsize~0 (_ bv0 32))) (not (bvslt (_ bv1 32) main_~ielen~0)))} is VALID [2018-11-23 11:32:40,235 INFO L273 TraceCheckUtils]: 6: Hoare triple {1008#true} assume !!~bvslt32(~bufsize~0, 1000000bv32); {1008#true} is VALID [2018-11-23 11:32:40,235 INFO L273 TraceCheckUtils]: 5: Hoare triple {1008#true} assume !!~bvslt32(~leader_len~0, 1000000bv32); {1008#true} is VALID [2018-11-23 11:32:40,235 INFO L273 TraceCheckUtils]: 4: Hoare triple {1008#true} havoc ~p~0;havoc ~i~0;havoc ~leader_len~0;havoc ~bufsize~0;havoc ~bufsize_0~0;havoc ~ielen~0;~leader_len~0 := #t~nondet1;havoc #t~nondet1;~bufsize~0 := #t~nondet2;havoc #t~nondet2;~ielen~0 := #t~nondet3;havoc #t~nondet3; {1008#true} is VALID [2018-11-23 11:32:40,235 INFO L256 TraceCheckUtils]: 3: Hoare triple {1008#true} call #t~ret5 := main(); {1008#true} is VALID [2018-11-23 11:32:40,235 INFO L268 TraceCheckUtils]: 2: Hoare quadruple {1008#true} {1008#true} #74#return; {1008#true} is VALID [2018-11-23 11:32:40,236 INFO L273 TraceCheckUtils]: 1: Hoare triple {1008#true} assume true; {1008#true} is VALID [2018-11-23 11:32:40,236 INFO L256 TraceCheckUtils]: 0: Hoare triple {1008#true} call ULTIMATE.init(); {1008#true} is VALID [2018-11-23 11:32:40,239 INFO L134 CoverageAnalysis]: Checked inductivity of 21 backedges. 8 proven. 7 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2018-11-23 11:32:40,240 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 11:32:40,241 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [17, 14] total 28 [2018-11-23 11:32:40,241 INFO L78 Accepts]: Start accepts. Automaton has 28 states. Word has length 36 [2018-11-23 11:32:40,242 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 11:32:40,242 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 28 states. [2018-11-23 11:32:40,836 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 56 edges. 56 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 11:32:40,836 INFO L459 AbstractCegarLoop]: Interpolant automaton has 28 states [2018-11-23 11:32:40,836 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 28 interpolants. [2018-11-23 11:32:40,837 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=121, Invalid=635, Unknown=0, NotChecked=0, Total=756 [2018-11-23 11:32:40,837 INFO L87 Difference]: Start difference. First operand 53 states and 58 transitions. Second operand 28 states. [2018-11-23 11:32:42,595 WARN L180 SmtUtils]: Spent 110.00 ms on a formula simplification. DAG size of input: 27 DAG size of output: 25 [2018-11-23 11:32:44,618 WARN L180 SmtUtils]: Spent 149.00 ms on a formula simplification. DAG size of input: 29 DAG size of output: 27 [2018-11-23 11:32:45,538 WARN L180 SmtUtils]: Spent 165.00 ms on a formula simplification. DAG size of input: 31 DAG size of output: 29 [2018-11-23 11:32:46,123 WARN L180 SmtUtils]: Spent 220.00 ms on a formula simplification. DAG size of input: 37 DAG size of output: 35 [2018-11-23 11:32:50,469 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 11:32:50,469 INFO L93 Difference]: Finished difference Result 63 states and 66 transitions. [2018-11-23 11:32:50,470 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2018-11-23 11:32:50,470 INFO L78 Accepts]: Start accepts. Automaton has 28 states. Word has length 36 [2018-11-23 11:32:50,470 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 11:32:50,470 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 28 states. [2018-11-23 11:32:50,474 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 49 transitions. [2018-11-23 11:32:50,474 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 28 states. [2018-11-23 11:32:50,477 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 49 transitions. [2018-11-23 11:32:50,477 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 20 states and 49 transitions. [2018-11-23 11:32:51,289 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 49 edges. 49 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 11:32:51,292 INFO L225 Difference]: With dead ends: 63 [2018-11-23 11:32:51,292 INFO L226 Difference]: Without dead ends: 61 [2018-11-23 11:32:51,293 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 81 GetRequests, 42 SyntacticMatches, 3 SemanticMatches, 36 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 280 ImplicationChecksByTransitivity, 6.7s TimeCoverageRelationStatistics Valid=266, Invalid=1140, Unknown=0, NotChecked=0, Total=1406 [2018-11-23 11:32:51,293 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 61 states. [2018-11-23 11:32:51,359 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 61 to 61. [2018-11-23 11:32:51,359 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 11:32:51,359 INFO L82 GeneralOperation]: Start isEquivalent. First operand 61 states. Second operand 61 states. [2018-11-23 11:32:51,360 INFO L74 IsIncluded]: Start isIncluded. First operand 61 states. Second operand 61 states. [2018-11-23 11:32:51,360 INFO L87 Difference]: Start difference. First operand 61 states. Second operand 61 states. [2018-11-23 11:32:51,363 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 11:32:51,364 INFO L93 Difference]: Finished difference Result 61 states and 64 transitions. [2018-11-23 11:32:51,364 INFO L276 IsEmpty]: Start isEmpty. Operand 61 states and 64 transitions. [2018-11-23 11:32:51,365 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 11:32:51,365 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 11:32:51,365 INFO L74 IsIncluded]: Start isIncluded. First operand 61 states. Second operand 61 states. [2018-11-23 11:32:51,365 INFO L87 Difference]: Start difference. First operand 61 states. Second operand 61 states. [2018-11-23 11:32:51,369 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 11:32:51,369 INFO L93 Difference]: Finished difference Result 61 states and 64 transitions. [2018-11-23 11:32:51,369 INFO L276 IsEmpty]: Start isEmpty. Operand 61 states and 64 transitions. [2018-11-23 11:32:51,370 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 11:32:51,370 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 11:32:51,370 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 11:32:51,371 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 11:32:51,371 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 61 states. [2018-11-23 11:32:51,374 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 61 states to 61 states and 64 transitions. [2018-11-23 11:32:51,374 INFO L78 Accepts]: Start accepts. Automaton has 61 states and 64 transitions. Word has length 36 [2018-11-23 11:32:51,375 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 11:32:51,375 INFO L480 AbstractCegarLoop]: Abstraction has 61 states and 64 transitions. [2018-11-23 11:32:51,375 INFO L481 AbstractCegarLoop]: Interpolant automaton has 28 states. [2018-11-23 11:32:51,375 INFO L276 IsEmpty]: Start isEmpty. Operand 61 states and 64 transitions. [2018-11-23 11:32:51,377 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 63 [2018-11-23 11:32:51,377 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 11:32:51,377 INFO L402 BasicCegarLoop]: trace histogram [8, 7, 7, 4, 4, 4, 4, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 11:32:51,377 INFO L423 AbstractCegarLoop]: === Iteration 5 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 11:32:51,378 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 11:32:51,378 INFO L82 PathProgramCache]: Analyzing trace with hash -1881889515, now seen corresponding path program 3 times [2018-11-23 11:32:51,378 INFO L223 ckRefinementStrategy]: Switched to mode CVC4_FPBP [2018-11-23 11:32:51,379 INFO L69 tionRefinementEngine]: Using refinement strategy WolfRefinementStrategy No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4nyu Starting monitored process 6 with cvc4nyu --tear-down-incremental --print-success --lang smt --rewrite-divk (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 6 with cvc4nyu --tear-down-incremental --print-success --lang smt --rewrite-divk [2018-11-23 11:32:51,412 INFO L101 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2018-11-23 11:32:51,614 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 5 check-sat command(s) [2018-11-23 11:32:51,614 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 11:32:51,723 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 11:32:51,727 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 11:32:53,399 WARN L180 SmtUtils]: Spent 141.00 ms on a formula simplification. DAG size of input: 28 DAG size of output: 25 [2018-11-23 11:32:54,396 WARN L180 SmtUtils]: Spent 147.00 ms on a formula simplification. DAG size of input: 27 DAG size of output: 24 [2018-11-23 11:32:54,778 INFO L256 TraceCheckUtils]: 0: Hoare triple {1565#true} call ULTIMATE.init(); {1565#true} is VALID [2018-11-23 11:32:54,779 INFO L273 TraceCheckUtils]: 1: Hoare triple {1565#true} assume true; {1565#true} is VALID [2018-11-23 11:32:54,779 INFO L268 TraceCheckUtils]: 2: Hoare quadruple {1565#true} {1565#true} #74#return; {1565#true} is VALID [2018-11-23 11:32:54,779 INFO L256 TraceCheckUtils]: 3: Hoare triple {1565#true} call #t~ret5 := main(); {1565#true} is VALID [2018-11-23 11:32:54,779 INFO L273 TraceCheckUtils]: 4: Hoare triple {1565#true} havoc ~p~0;havoc ~i~0;havoc ~leader_len~0;havoc ~bufsize~0;havoc ~bufsize_0~0;havoc ~ielen~0;~leader_len~0 := #t~nondet1;havoc #t~nondet1;~bufsize~0 := #t~nondet2;havoc #t~nondet2;~ielen~0 := #t~nondet3;havoc #t~nondet3; {1565#true} is VALID [2018-11-23 11:32:54,780 INFO L273 TraceCheckUtils]: 5: Hoare triple {1565#true} assume !!~bvslt32(~leader_len~0, 1000000bv32); {1585#(bvslt main_~leader_len~0 (_ bv1000000 32))} is VALID [2018-11-23 11:32:54,781 INFO L273 TraceCheckUtils]: 6: Hoare triple {1585#(bvslt main_~leader_len~0 (_ bv1000000 32))} assume !!~bvslt32(~bufsize~0, 1000000bv32); {1589#(and (bvslt main_~bufsize~0 (_ bv1000000 32)) (bvslt main_~leader_len~0 (_ bv1000000 32)))} is VALID [2018-11-23 11:32:54,781 INFO L273 TraceCheckUtils]: 7: Hoare triple {1589#(and (bvslt main_~bufsize~0 (_ bv1000000 32)) (bvslt main_~leader_len~0 (_ bv1000000 32)))} assume !!~bvslt32(~ielen~0, 1000000bv32); {1593#(and (bvslt main_~bufsize~0 (_ bv1000000 32)) (bvslt main_~leader_len~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)))} is VALID [2018-11-23 11:32:54,782 INFO L273 TraceCheckUtils]: 8: Hoare triple {1593#(and (bvslt main_~bufsize~0 (_ bv1000000 32)) (bvslt main_~leader_len~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)))} assume ~bvsgt32(~leader_len~0, 0bv32); {1597#(and (bvslt main_~bufsize~0 (_ bv1000000 32)) (bvslt main_~leader_len~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~leader_len~0 (_ bv0 32)))} is VALID [2018-11-23 11:32:54,783 INFO L273 TraceCheckUtils]: 9: Hoare triple {1597#(and (bvslt main_~bufsize~0 (_ bv1000000 32)) (bvslt main_~leader_len~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~leader_len~0 (_ bv0 32)))} assume ~bvsgt32(~bufsize~0, 0bv32); {1601#(and (bvsgt main_~bufsize~0 (_ bv0 32)) (bvslt main_~bufsize~0 (_ bv1000000 32)) (bvslt main_~leader_len~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~leader_len~0 (_ bv0 32)))} is VALID [2018-11-23 11:32:54,783 INFO L273 TraceCheckUtils]: 10: Hoare triple {1601#(and (bvsgt main_~bufsize~0 (_ bv0 32)) (bvslt main_~bufsize~0 (_ bv1000000 32)) (bvslt main_~leader_len~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~leader_len~0 (_ bv0 32)))} assume ~bvsgt32(~ielen~0, 0bv32); {1605#(and (bvsgt main_~bufsize~0 (_ bv0 32)) (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt main_~bufsize~0 (_ bv1000000 32)) (bvslt main_~leader_len~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~leader_len~0 (_ bv0 32)))} is VALID [2018-11-23 11:32:54,787 INFO L273 TraceCheckUtils]: 11: Hoare triple {1605#(and (bvsgt main_~bufsize~0 (_ bv0 32)) (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt main_~bufsize~0 (_ bv1000000 32)) (bvslt main_~leader_len~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~leader_len~0 (_ bv0 32)))} assume !~bvslt32(~bufsize~0, ~leader_len~0);~p~0 := 0bv32;~bufsize_0~0 := ~bufsize~0;~bufsize~0 := ~bvsub32(~bufsize~0, ~leader_len~0);~p~0 := ~bvadd32(~p~0, ~leader_len~0); {1609#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt main_~bufsize_0~0 main_~p~0)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~p~0 (_ bv0 32)) (= main_~bufsize~0 (bvadd (bvneg main_~p~0) main_~bufsize_0~0)))} is VALID [2018-11-23 11:32:54,788 INFO L273 TraceCheckUtils]: 12: Hoare triple {1609#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt main_~bufsize_0~0 main_~p~0)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~p~0 (_ bv0 32)) (= main_~bufsize~0 (bvadd (bvneg main_~p~0) main_~bufsize_0~0)))} assume !~bvslt32(~bufsize~0, ~bvmul32(2bv32, ~ielen~0));~i~0 := 0bv32; {1613#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt main_~bufsize_0~0 main_~p~0)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (not (bvslt (bvadd (bvneg main_~p~0) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~ielen~0 (_ bv1000000 32)) (= main_~i~0 (_ bv0 32)) (bvsgt main_~p~0 (_ bv0 32)))} is VALID [2018-11-23 11:32:54,788 INFO L273 TraceCheckUtils]: 13: Hoare triple {1613#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt main_~bufsize_0~0 main_~p~0)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (not (bvslt (bvadd (bvneg main_~p~0) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~ielen~0 (_ bv1000000 32)) (= main_~i~0 (_ bv0 32)) (bvsgt main_~p~0 (_ bv0 32)))} assume !!(~bvslt32(~i~0, ~ielen~0) && ~bvsgt32(~bufsize~0, 2bv32)); {1613#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt main_~bufsize_0~0 main_~p~0)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (not (bvslt (bvadd (bvneg main_~p~0) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~ielen~0 (_ bv1000000 32)) (= main_~i~0 (_ bv0 32)) (bvsgt main_~p~0 (_ bv0 32)))} is VALID [2018-11-23 11:32:54,788 INFO L256 TraceCheckUtils]: 14: Hoare triple {1613#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt main_~bufsize_0~0 main_~p~0)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (not (bvslt (bvadd (bvneg main_~p~0) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~ielen~0 (_ bv1000000 32)) (= main_~i~0 (_ bv0 32)) (bvsgt main_~p~0 (_ bv0 32)))} call __VERIFIER_assert((if ~bvsle32(0bv32, ~p~0) then 1bv32 else 0bv32)); {1565#true} is VALID [2018-11-23 11:32:54,789 INFO L273 TraceCheckUtils]: 15: Hoare triple {1565#true} ~cond := #in~cond; {1565#true} is VALID [2018-11-23 11:32:54,789 INFO L273 TraceCheckUtils]: 16: Hoare triple {1565#true} assume !(0bv32 == ~cond); {1565#true} is VALID [2018-11-23 11:32:54,789 INFO L273 TraceCheckUtils]: 17: Hoare triple {1565#true} assume true; {1565#true} is VALID [2018-11-23 11:32:54,812 INFO L268 TraceCheckUtils]: 18: Hoare quadruple {1565#true} {1613#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt main_~bufsize_0~0 main_~p~0)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (not (bvslt (bvadd (bvneg main_~p~0) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~ielen~0 (_ bv1000000 32)) (= main_~i~0 (_ bv0 32)) (bvsgt main_~p~0 (_ bv0 32)))} #78#return; {1613#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt main_~bufsize_0~0 main_~p~0)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (not (bvslt (bvadd (bvneg main_~p~0) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~ielen~0 (_ bv1000000 32)) (= main_~i~0 (_ bv0 32)) (bvsgt main_~p~0 (_ bv0 32)))} is VALID [2018-11-23 11:32:54,812 INFO L256 TraceCheckUtils]: 19: Hoare triple {1613#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt main_~bufsize_0~0 main_~p~0)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (not (bvslt (bvadd (bvneg main_~p~0) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~ielen~0 (_ bv1000000 32)) (= main_~i~0 (_ bv0 32)) (bvsgt main_~p~0 (_ bv0 32)))} call __VERIFIER_assert((if ~bvslt32(~bvadd32(1bv32, ~p~0), ~bufsize_0~0) then 1bv32 else 0bv32)); {1565#true} is VALID [2018-11-23 11:32:54,812 INFO L273 TraceCheckUtils]: 20: Hoare triple {1565#true} ~cond := #in~cond; {1565#true} is VALID [2018-11-23 11:32:54,813 INFO L273 TraceCheckUtils]: 21: Hoare triple {1565#true} assume !(0bv32 == ~cond); {1565#true} is VALID [2018-11-23 11:32:54,813 INFO L273 TraceCheckUtils]: 22: Hoare triple {1565#true} assume true; {1565#true} is VALID [2018-11-23 11:32:54,815 INFO L268 TraceCheckUtils]: 23: Hoare quadruple {1565#true} {1613#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt main_~bufsize_0~0 main_~p~0)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (not (bvslt (bvadd (bvneg main_~p~0) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~ielen~0 (_ bv1000000 32)) (= main_~i~0 (_ bv0 32)) (bvsgt main_~p~0 (_ bv0 32)))} #80#return; {1613#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt main_~bufsize_0~0 main_~p~0)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (not (bvslt (bvadd (bvneg main_~p~0) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~ielen~0 (_ bv1000000 32)) (= main_~i~0 (_ bv0 32)) (bvsgt main_~p~0 (_ bv0 32)))} is VALID [2018-11-23 11:32:55,281 INFO L273 TraceCheckUtils]: 24: Hoare triple {1613#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt main_~bufsize_0~0 main_~p~0)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (not (bvslt (bvadd (bvneg main_~p~0) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~ielen~0 (_ bv1000000 32)) (= main_~i~0 (_ bv0 32)) (bvsgt main_~p~0 (_ bv0 32)))} ~p~0 := ~bvadd32(2bv32, ~p~0); {1650#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967294 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (not (bvslt main_~bufsize_0~0 (bvadd main_~p~0 (_ bv4294967294 32)))) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv0 32)) (= main_~i~0 (_ bv0 32)))} is VALID [2018-11-23 11:32:55,282 INFO L273 TraceCheckUtils]: 25: Hoare triple {1650#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967294 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (not (bvslt main_~bufsize_0~0 (bvadd main_~p~0 (_ bv4294967294 32)))) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv0 32)) (= main_~i~0 (_ bv0 32)))} #t~post4 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post4);havoc #t~post4; {1654#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967294 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (not (bvslt main_~bufsize_0~0 (bvadd main_~p~0 (_ bv4294967294 32)))) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv0 32)) (= (bvadd main_~i~0 (_ bv4294967295 32)) (_ bv0 32)))} is VALID [2018-11-23 11:32:55,288 INFO L273 TraceCheckUtils]: 26: Hoare triple {1654#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967294 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (not (bvslt main_~bufsize_0~0 (bvadd main_~p~0 (_ bv4294967294 32)))) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv0 32)) (= (bvadd main_~i~0 (_ bv4294967295 32)) (_ bv0 32)))} assume !!(~bvslt32(~i~0, ~ielen~0) && ~bvsgt32(~bufsize~0, 2bv32)); {1654#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967294 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (not (bvslt main_~bufsize_0~0 (bvadd main_~p~0 (_ bv4294967294 32)))) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv0 32)) (= (bvadd main_~i~0 (_ bv4294967295 32)) (_ bv0 32)))} is VALID [2018-11-23 11:32:55,289 INFO L256 TraceCheckUtils]: 27: Hoare triple {1654#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967294 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (not (bvslt main_~bufsize_0~0 (bvadd main_~p~0 (_ bv4294967294 32)))) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv0 32)) (= (bvadd main_~i~0 (_ bv4294967295 32)) (_ bv0 32)))} call __VERIFIER_assert((if ~bvsle32(0bv32, ~p~0) then 1bv32 else 0bv32)); {1565#true} is VALID [2018-11-23 11:32:55,289 INFO L273 TraceCheckUtils]: 28: Hoare triple {1565#true} ~cond := #in~cond; {1565#true} is VALID [2018-11-23 11:32:55,289 INFO L273 TraceCheckUtils]: 29: Hoare triple {1565#true} assume !(0bv32 == ~cond); {1565#true} is VALID [2018-11-23 11:32:55,290 INFO L273 TraceCheckUtils]: 30: Hoare triple {1565#true} assume true; {1565#true} is VALID [2018-11-23 11:32:55,290 INFO L268 TraceCheckUtils]: 31: Hoare quadruple {1565#true} {1654#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967294 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (not (bvslt main_~bufsize_0~0 (bvadd main_~p~0 (_ bv4294967294 32)))) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv0 32)) (= (bvadd main_~i~0 (_ bv4294967295 32)) (_ bv0 32)))} #78#return; {1654#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967294 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (not (bvslt main_~bufsize_0~0 (bvadd main_~p~0 (_ bv4294967294 32)))) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv0 32)) (= (bvadd main_~i~0 (_ bv4294967295 32)) (_ bv0 32)))} is VALID [2018-11-23 11:32:55,291 INFO L256 TraceCheckUtils]: 32: Hoare triple {1654#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967294 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (not (bvslt main_~bufsize_0~0 (bvadd main_~p~0 (_ bv4294967294 32)))) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv0 32)) (= (bvadd main_~i~0 (_ bv4294967295 32)) (_ bv0 32)))} call __VERIFIER_assert((if ~bvslt32(~bvadd32(1bv32, ~p~0), ~bufsize_0~0) then 1bv32 else 0bv32)); {1565#true} is VALID [2018-11-23 11:32:55,292 INFO L273 TraceCheckUtils]: 33: Hoare triple {1565#true} ~cond := #in~cond; {1679#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2018-11-23 11:32:55,294 INFO L273 TraceCheckUtils]: 34: Hoare triple {1679#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0bv32 == ~cond); {1683#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} is VALID [2018-11-23 11:32:55,294 INFO L273 TraceCheckUtils]: 35: Hoare triple {1683#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} assume true; {1683#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} is VALID [2018-11-23 11:32:55,299 INFO L268 TraceCheckUtils]: 36: Hoare quadruple {1683#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} {1654#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967294 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (not (bvslt main_~bufsize_0~0 (bvadd main_~p~0 (_ bv4294967294 32)))) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv0 32)) (= (bvadd main_~i~0 (_ bv4294967295 32)) (_ bv0 32)))} #80#return; {1690#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967294 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (not (bvslt main_~bufsize_0~0 (bvadd main_~p~0 (_ bv4294967294 32)))) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0) (= (bvadd main_~i~0 (_ bv4294967295 32)) (_ bv0 32)))} is VALID [2018-11-23 11:32:56,700 INFO L273 TraceCheckUtils]: 37: Hoare triple {1690#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967294 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (not (bvslt main_~bufsize_0~0 (bvadd main_~p~0 (_ bv4294967294 32)))) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0) (= (bvadd main_~i~0 (_ bv4294967295 32)) (_ bv0 32)))} ~p~0 := ~bvadd32(2bv32, ~p~0); {1694#(and (not (bvslt main_~bufsize_0~0 (bvadd main_~p~0 (_ bv4294967292 32)))) (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967292 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvslt (bvadd main_~p~0 (_ bv4294967295 32)) main_~bufsize_0~0) (bvsgt (bvadd main_~p~0 (_ bv4294967292 32)) (_ bv0 32)) (= (bvadd main_~i~0 (_ bv4294967295 32)) (_ bv0 32)))} is VALID [2018-11-23 11:32:56,702 INFO L273 TraceCheckUtils]: 38: Hoare triple {1694#(and (not (bvslt main_~bufsize_0~0 (bvadd main_~p~0 (_ bv4294967292 32)))) (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967292 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvslt (bvadd main_~p~0 (_ bv4294967295 32)) main_~bufsize_0~0) (bvsgt (bvadd main_~p~0 (_ bv4294967292 32)) (_ bv0 32)) (= (bvadd main_~i~0 (_ bv4294967295 32)) (_ bv0 32)))} #t~post4 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post4);havoc #t~post4; {1698#(and (not (bvslt main_~bufsize_0~0 (bvadd main_~p~0 (_ bv4294967292 32)))) (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967292 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvslt (bvadd main_~p~0 (_ bv4294967295 32)) main_~bufsize_0~0) (bvsgt (bvadd main_~p~0 (_ bv4294967292 32)) (_ bv0 32)) (= (_ bv2 32) main_~i~0))} is VALID [2018-11-23 11:32:56,702 INFO L273 TraceCheckUtils]: 39: Hoare triple {1698#(and (not (bvslt main_~bufsize_0~0 (bvadd main_~p~0 (_ bv4294967292 32)))) (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967292 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvslt (bvadd main_~p~0 (_ bv4294967295 32)) main_~bufsize_0~0) (bvsgt (bvadd main_~p~0 (_ bv4294967292 32)) (_ bv0 32)) (= (_ bv2 32) main_~i~0))} assume !!(~bvslt32(~i~0, ~ielen~0) && ~bvsgt32(~bufsize~0, 2bv32)); {1698#(and (not (bvslt main_~bufsize_0~0 (bvadd main_~p~0 (_ bv4294967292 32)))) (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967292 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvslt (bvadd main_~p~0 (_ bv4294967295 32)) main_~bufsize_0~0) (bvsgt (bvadd main_~p~0 (_ bv4294967292 32)) (_ bv0 32)) (= (_ bv2 32) main_~i~0))} is VALID [2018-11-23 11:32:56,703 INFO L256 TraceCheckUtils]: 40: Hoare triple {1698#(and (not (bvslt main_~bufsize_0~0 (bvadd main_~p~0 (_ bv4294967292 32)))) (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967292 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvslt (bvadd main_~p~0 (_ bv4294967295 32)) main_~bufsize_0~0) (bvsgt (bvadd main_~p~0 (_ bv4294967292 32)) (_ bv0 32)) (= (_ bv2 32) main_~i~0))} call __VERIFIER_assert((if ~bvsle32(0bv32, ~p~0) then 1bv32 else 0bv32)); {1565#true} is VALID [2018-11-23 11:32:56,703 INFO L273 TraceCheckUtils]: 41: Hoare triple {1565#true} ~cond := #in~cond; {1565#true} is VALID [2018-11-23 11:32:56,703 INFO L273 TraceCheckUtils]: 42: Hoare triple {1565#true} assume !(0bv32 == ~cond); {1565#true} is VALID [2018-11-23 11:32:56,703 INFO L273 TraceCheckUtils]: 43: Hoare triple {1565#true} assume true; {1565#true} is VALID [2018-11-23 11:32:56,704 INFO L268 TraceCheckUtils]: 44: Hoare quadruple {1565#true} {1698#(and (not (bvslt main_~bufsize_0~0 (bvadd main_~p~0 (_ bv4294967292 32)))) (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967292 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvslt (bvadd main_~p~0 (_ bv4294967295 32)) main_~bufsize_0~0) (bvsgt (bvadd main_~p~0 (_ bv4294967292 32)) (_ bv0 32)) (= (_ bv2 32) main_~i~0))} #78#return; {1698#(and (not (bvslt main_~bufsize_0~0 (bvadd main_~p~0 (_ bv4294967292 32)))) (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967292 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvslt (bvadd main_~p~0 (_ bv4294967295 32)) main_~bufsize_0~0) (bvsgt (bvadd main_~p~0 (_ bv4294967292 32)) (_ bv0 32)) (= (_ bv2 32) main_~i~0))} is VALID [2018-11-23 11:32:56,704 INFO L256 TraceCheckUtils]: 45: Hoare triple {1698#(and (not (bvslt main_~bufsize_0~0 (bvadd main_~p~0 (_ bv4294967292 32)))) (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967292 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvslt (bvadd main_~p~0 (_ bv4294967295 32)) main_~bufsize_0~0) (bvsgt (bvadd main_~p~0 (_ bv4294967292 32)) (_ bv0 32)) (= (_ bv2 32) main_~i~0))} call __VERIFIER_assert((if ~bvslt32(~bvadd32(1bv32, ~p~0), ~bufsize_0~0) then 1bv32 else 0bv32)); {1565#true} is VALID [2018-11-23 11:32:56,704 INFO L273 TraceCheckUtils]: 46: Hoare triple {1565#true} ~cond := #in~cond; {1679#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2018-11-23 11:32:56,705 INFO L273 TraceCheckUtils]: 47: Hoare triple {1679#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0bv32 == ~cond); {1683#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} is VALID [2018-11-23 11:32:56,706 INFO L273 TraceCheckUtils]: 48: Hoare triple {1683#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} assume true; {1683#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} is VALID [2018-11-23 11:32:56,712 INFO L268 TraceCheckUtils]: 49: Hoare quadruple {1683#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} {1698#(and (not (bvslt main_~bufsize_0~0 (bvadd main_~p~0 (_ bv4294967292 32)))) (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967292 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvslt (bvadd main_~p~0 (_ bv4294967295 32)) main_~bufsize_0~0) (bvsgt (bvadd main_~p~0 (_ bv4294967292 32)) (_ bv0 32)) (= (_ bv2 32) main_~i~0))} #80#return; {1732#(and (not (bvslt main_~bufsize_0~0 (bvadd main_~p~0 (_ bv4294967292 32)))) (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967292 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0) (bvsgt (bvadd main_~p~0 (_ bv4294967292 32)) (_ bv0 32)) (= (_ bv2 32) main_~i~0))} is VALID [2018-11-23 11:32:58,364 INFO L273 TraceCheckUtils]: 50: Hoare triple {1732#(and (not (bvslt main_~bufsize_0~0 (bvadd main_~p~0 (_ bv4294967292 32)))) (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967292 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0) (bvsgt (bvadd main_~p~0 (_ bv4294967292 32)) (_ bv0 32)) (= (_ bv2 32) main_~i~0))} ~p~0 := ~bvadd32(2bv32, ~p~0); {1736#(and (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (not (bvslt main_~bufsize_0~0 (bvadd main_~p~0 (_ bv4294967290 32)))) (bvslt (bvadd main_~p~0 (_ bv4294967295 32)) main_~bufsize_0~0) (bvsgt (bvadd main_~p~0 (_ bv4294967290 32)) (_ bv0 32)) (= (_ bv2 32) main_~i~0) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967290 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))))} is VALID [2018-11-23 11:32:58,365 INFO L273 TraceCheckUtils]: 51: Hoare triple {1736#(and (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (not (bvslt main_~bufsize_0~0 (bvadd main_~p~0 (_ bv4294967290 32)))) (bvslt (bvadd main_~p~0 (_ bv4294967295 32)) main_~bufsize_0~0) (bvsgt (bvadd main_~p~0 (_ bv4294967290 32)) (_ bv0 32)) (= (_ bv2 32) main_~i~0) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967290 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))))} #t~post4 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post4);havoc #t~post4; {1740#(and (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (= (bvadd main_~i~0 (_ bv4294967293 32)) (_ bv0 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (not (bvslt main_~bufsize_0~0 (bvadd main_~p~0 (_ bv4294967290 32)))) (bvslt (bvadd main_~p~0 (_ bv4294967295 32)) main_~bufsize_0~0) (bvsgt (bvadd main_~p~0 (_ bv4294967290 32)) (_ bv0 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967290 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))))} is VALID [2018-11-23 11:32:58,370 INFO L273 TraceCheckUtils]: 52: Hoare triple {1740#(and (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (= (bvadd main_~i~0 (_ bv4294967293 32)) (_ bv0 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (not (bvslt main_~bufsize_0~0 (bvadd main_~p~0 (_ bv4294967290 32)))) (bvslt (bvadd main_~p~0 (_ bv4294967295 32)) main_~bufsize_0~0) (bvsgt (bvadd main_~p~0 (_ bv4294967290 32)) (_ bv0 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967290 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))))} assume !!(~bvslt32(~i~0, ~ielen~0) && ~bvsgt32(~bufsize~0, 2bv32)); {1744#(and (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (exists ((main_~ielen~0 (_ BitVec 32))) (and (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvslt (_ bv3 32) main_~ielen~0) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967290 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))))) (not (bvslt main_~bufsize_0~0 (bvadd main_~p~0 (_ bv4294967290 32)))) (bvsgt (bvadd main_~p~0 (_ bv4294967290 32)) (_ bv0 32)))} is VALID [2018-11-23 11:32:58,370 INFO L256 TraceCheckUtils]: 53: Hoare triple {1744#(and (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (exists ((main_~ielen~0 (_ BitVec 32))) (and (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvslt (_ bv3 32) main_~ielen~0) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967290 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))))) (not (bvslt main_~bufsize_0~0 (bvadd main_~p~0 (_ bv4294967290 32)))) (bvsgt (bvadd main_~p~0 (_ bv4294967290 32)) (_ bv0 32)))} call __VERIFIER_assert((if ~bvsle32(0bv32, ~p~0) then 1bv32 else 0bv32)); {1565#true} is VALID [2018-11-23 11:32:58,371 INFO L273 TraceCheckUtils]: 54: Hoare triple {1565#true} ~cond := #in~cond; {1565#true} is VALID [2018-11-23 11:32:58,371 INFO L273 TraceCheckUtils]: 55: Hoare triple {1565#true} assume !(0bv32 == ~cond); {1565#true} is VALID [2018-11-23 11:32:58,371 INFO L273 TraceCheckUtils]: 56: Hoare triple {1565#true} assume true; {1565#true} is VALID [2018-11-23 11:32:58,372 INFO L268 TraceCheckUtils]: 57: Hoare quadruple {1565#true} {1744#(and (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (exists ((main_~ielen~0 (_ BitVec 32))) (and (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvslt (_ bv3 32) main_~ielen~0) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967290 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))))) (not (bvslt main_~bufsize_0~0 (bvadd main_~p~0 (_ bv4294967290 32)))) (bvsgt (bvadd main_~p~0 (_ bv4294967290 32)) (_ bv0 32)))} #78#return; {1744#(and (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (exists ((main_~ielen~0 (_ BitVec 32))) (and (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvslt (_ bv3 32) main_~ielen~0) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967290 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))))) (not (bvslt main_~bufsize_0~0 (bvadd main_~p~0 (_ bv4294967290 32)))) (bvsgt (bvadd main_~p~0 (_ bv4294967290 32)) (_ bv0 32)))} is VALID [2018-11-23 11:32:58,440 INFO L256 TraceCheckUtils]: 58: Hoare triple {1744#(and (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (exists ((main_~ielen~0 (_ BitVec 32))) (and (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvslt (_ bv3 32) main_~ielen~0) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967290 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))))) (not (bvslt main_~bufsize_0~0 (bvadd main_~p~0 (_ bv4294967290 32)))) (bvsgt (bvadd main_~p~0 (_ bv4294967290 32)) (_ bv0 32)))} call __VERIFIER_assert((if ~bvslt32(~bvadd32(1bv32, ~p~0), ~bufsize_0~0) then 1bv32 else 0bv32)); {1763#(= (bvadd |__VERIFIER_assert_#in~cond| (_ bv4294967295 32)) (_ bv0 32))} is VALID [2018-11-23 11:32:58,440 INFO L273 TraceCheckUtils]: 59: Hoare triple {1763#(= (bvadd |__VERIFIER_assert_#in~cond| (_ bv4294967295 32)) (_ bv0 32))} ~cond := #in~cond; {1767#(= (bvadd __VERIFIER_assert_~cond (_ bv4294967295 32)) (_ bv0 32))} is VALID [2018-11-23 11:32:58,441 INFO L273 TraceCheckUtils]: 60: Hoare triple {1767#(= (bvadd __VERIFIER_assert_~cond (_ bv4294967295 32)) (_ bv0 32))} assume 0bv32 == ~cond; {1566#false} is VALID [2018-11-23 11:32:58,441 INFO L273 TraceCheckUtils]: 61: Hoare triple {1566#false} assume !false; {1566#false} is VALID [2018-11-23 11:32:58,455 INFO L134 CoverageAnalysis]: Checked inductivity of 122 backedges. 33 proven. 35 refuted. 0 times theorem prover too weak. 54 trivial. 0 not checked. [2018-11-23 11:32:58,456 INFO L316 TraceCheckSpWp]: Computing backward predicates... [2018-11-23 11:33:06,059 WARN L180 SmtUtils]: Spent 307.00 ms on a formula simplification. DAG size of input: 23 DAG size of output: 20 [2018-11-23 11:33:07,658 WARN L180 SmtUtils]: Spent 105.00 ms on a formula simplification. DAG size of input: 23 DAG size of output: 22 [2018-11-23 11:33:08,408 INFO L273 TraceCheckUtils]: 61: Hoare triple {1566#false} assume !false; {1566#false} is VALID [2018-11-23 11:33:08,409 INFO L273 TraceCheckUtils]: 60: Hoare triple {1777#(not (= (_ bv0 32) __VERIFIER_assert_~cond))} assume 0bv32 == ~cond; {1566#false} is VALID [2018-11-23 11:33:08,410 INFO L273 TraceCheckUtils]: 59: Hoare triple {1683#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} ~cond := #in~cond; {1777#(not (= (_ bv0 32) __VERIFIER_assert_~cond))} is VALID [2018-11-23 11:33:08,411 INFO L256 TraceCheckUtils]: 58: Hoare triple {1784#(bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)} call __VERIFIER_assert((if ~bvslt32(~bvadd32(1bv32, ~p~0), ~bufsize_0~0) then 1bv32 else 0bv32)); {1683#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} is VALID [2018-11-23 11:33:08,411 INFO L268 TraceCheckUtils]: 57: Hoare quadruple {1565#true} {1784#(bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)} #78#return; {1784#(bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)} is VALID [2018-11-23 11:33:08,412 INFO L273 TraceCheckUtils]: 56: Hoare triple {1565#true} assume true; {1565#true} is VALID [2018-11-23 11:33:08,412 INFO L273 TraceCheckUtils]: 55: Hoare triple {1565#true} assume !(0bv32 == ~cond); {1565#true} is VALID [2018-11-23 11:33:08,412 INFO L273 TraceCheckUtils]: 54: Hoare triple {1565#true} ~cond := #in~cond; {1565#true} is VALID [2018-11-23 11:33:08,412 INFO L256 TraceCheckUtils]: 53: Hoare triple {1784#(bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)} call __VERIFIER_assert((if ~bvsle32(0bv32, ~p~0) then 1bv32 else 0bv32)); {1565#true} is VALID [2018-11-23 11:33:08,413 INFO L273 TraceCheckUtils]: 52: Hoare triple {1803#(or (not (bvslt main_~i~0 main_~ielen~0)) (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0))} assume !!(~bvslt32(~i~0, ~ielen~0) && ~bvsgt32(~bufsize~0, 2bv32)); {1784#(bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)} is VALID [2018-11-23 11:33:08,413 INFO L273 TraceCheckUtils]: 51: Hoare triple {1807#(or (not (bvslt (bvadd main_~i~0 (_ bv1 32)) main_~ielen~0)) (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0))} #t~post4 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post4);havoc #t~post4; {1803#(or (not (bvslt main_~i~0 main_~ielen~0)) (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0))} is VALID [2018-11-23 11:33:08,439 INFO L273 TraceCheckUtils]: 50: Hoare triple {1811#(or (not (bvslt (bvadd main_~i~0 (_ bv1 32)) main_~ielen~0)) (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0))} ~p~0 := ~bvadd32(2bv32, ~p~0); {1807#(or (not (bvslt (bvadd main_~i~0 (_ bv1 32)) main_~ielen~0)) (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0))} is VALID [2018-11-23 11:33:08,442 INFO L268 TraceCheckUtils]: 49: Hoare quadruple {1683#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} {1815#(or (not (bvslt (bvadd main_~i~0 (_ bv1 32)) main_~ielen~0)) (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} #80#return; {1811#(or (not (bvslt (bvadd main_~i~0 (_ bv1 32)) main_~ielen~0)) (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0))} is VALID [2018-11-23 11:33:08,443 INFO L273 TraceCheckUtils]: 48: Hoare triple {1683#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} assume true; {1683#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} is VALID [2018-11-23 11:33:08,444 INFO L273 TraceCheckUtils]: 47: Hoare triple {1825#(or (= (_ bv0 32) __VERIFIER_assert_~cond) (not (= |__VERIFIER_assert_#in~cond| (_ bv0 32))))} assume !(0bv32 == ~cond); {1683#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} is VALID [2018-11-23 11:33:08,462 INFO L273 TraceCheckUtils]: 46: Hoare triple {1565#true} ~cond := #in~cond; {1825#(or (= (_ bv0 32) __VERIFIER_assert_~cond) (not (= |__VERIFIER_assert_#in~cond| (_ bv0 32))))} is VALID [2018-11-23 11:33:08,462 INFO L256 TraceCheckUtils]: 45: Hoare triple {1815#(or (not (bvslt (bvadd main_~i~0 (_ bv1 32)) main_~ielen~0)) (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} call __VERIFIER_assert((if ~bvslt32(~bvadd32(1bv32, ~p~0), ~bufsize_0~0) then 1bv32 else 0bv32)); {1565#true} is VALID [2018-11-23 11:33:08,479 INFO L268 TraceCheckUtils]: 44: Hoare quadruple {1565#true} {1815#(or (not (bvslt (bvadd main_~i~0 (_ bv1 32)) main_~ielen~0)) (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} #78#return; {1815#(or (not (bvslt (bvadd main_~i~0 (_ bv1 32)) main_~ielen~0)) (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} is VALID [2018-11-23 11:33:08,479 INFO L273 TraceCheckUtils]: 43: Hoare triple {1565#true} assume true; {1565#true} is VALID [2018-11-23 11:33:08,480 INFO L273 TraceCheckUtils]: 42: Hoare triple {1565#true} assume !(0bv32 == ~cond); {1565#true} is VALID [2018-11-23 11:33:08,480 INFO L273 TraceCheckUtils]: 41: Hoare triple {1565#true} ~cond := #in~cond; {1565#true} is VALID [2018-11-23 11:33:08,480 INFO L256 TraceCheckUtils]: 40: Hoare triple {1815#(or (not (bvslt (bvadd main_~i~0 (_ bv1 32)) main_~ielen~0)) (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} call __VERIFIER_assert((if ~bvsle32(0bv32, ~p~0) then 1bv32 else 0bv32)); {1565#true} is VALID [2018-11-23 11:33:08,488 INFO L273 TraceCheckUtils]: 39: Hoare triple {1815#(or (not (bvslt (bvadd main_~i~0 (_ bv1 32)) main_~ielen~0)) (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} assume !!(~bvslt32(~i~0, ~ielen~0) && ~bvsgt32(~bufsize~0, 2bv32)); {1815#(or (not (bvslt (bvadd main_~i~0 (_ bv1 32)) main_~ielen~0)) (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} is VALID [2018-11-23 11:33:08,513 INFO L273 TraceCheckUtils]: 38: Hoare triple {1850#(or (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~i~0 (_ bv2 32)) main_~ielen~0)) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} #t~post4 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post4);havoc #t~post4; {1815#(or (not (bvslt (bvadd main_~i~0 (_ bv1 32)) main_~ielen~0)) (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} is VALID [2018-11-23 11:33:08,582 INFO L273 TraceCheckUtils]: 37: Hoare triple {1854#(or (not (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0)) (bvslt (bvadd main_~p~0 (_ bv5 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~i~0 (_ bv2 32)) main_~ielen~0)))} ~p~0 := ~bvadd32(2bv32, ~p~0); {1850#(or (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~i~0 (_ bv2 32)) main_~ielen~0)) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} is VALID [2018-11-23 11:33:08,587 INFO L268 TraceCheckUtils]: 36: Hoare quadruple {1683#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} {1858#(or (not (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0)) (bvslt (bvadd main_~p~0 (_ bv5 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~i~0 (_ bv2 32)) main_~ielen~0)) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} #80#return; {1854#(or (not (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0)) (bvslt (bvadd main_~p~0 (_ bv5 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~i~0 (_ bv2 32)) main_~ielen~0)))} is VALID [2018-11-23 11:33:08,588 INFO L273 TraceCheckUtils]: 35: Hoare triple {1683#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} assume true; {1683#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} is VALID [2018-11-23 11:33:08,588 INFO L273 TraceCheckUtils]: 34: Hoare triple {1825#(or (= (_ bv0 32) __VERIFIER_assert_~cond) (not (= |__VERIFIER_assert_#in~cond| (_ bv0 32))))} assume !(0bv32 == ~cond); {1683#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} is VALID [2018-11-23 11:33:08,589 INFO L273 TraceCheckUtils]: 33: Hoare triple {1565#true} ~cond := #in~cond; {1825#(or (= (_ bv0 32) __VERIFIER_assert_~cond) (not (= |__VERIFIER_assert_#in~cond| (_ bv0 32))))} is VALID [2018-11-23 11:33:08,589 INFO L256 TraceCheckUtils]: 32: Hoare triple {1858#(or (not (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0)) (bvslt (bvadd main_~p~0 (_ bv5 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~i~0 (_ bv2 32)) main_~ielen~0)) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} call __VERIFIER_assert((if ~bvslt32(~bvadd32(1bv32, ~p~0), ~bufsize_0~0) then 1bv32 else 0bv32)); {1565#true} is VALID [2018-11-23 11:33:08,590 INFO L268 TraceCheckUtils]: 31: Hoare quadruple {1565#true} {1858#(or (not (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0)) (bvslt (bvadd main_~p~0 (_ bv5 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~i~0 (_ bv2 32)) main_~ielen~0)) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} #78#return; {1858#(or (not (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0)) (bvslt (bvadd main_~p~0 (_ bv5 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~i~0 (_ bv2 32)) main_~ielen~0)) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} is VALID [2018-11-23 11:33:08,590 INFO L273 TraceCheckUtils]: 30: Hoare triple {1565#true} assume true; {1565#true} is VALID [2018-11-23 11:33:08,590 INFO L273 TraceCheckUtils]: 29: Hoare triple {1565#true} assume !(0bv32 == ~cond); {1565#true} is VALID [2018-11-23 11:33:08,590 INFO L273 TraceCheckUtils]: 28: Hoare triple {1565#true} ~cond := #in~cond; {1565#true} is VALID [2018-11-23 11:33:08,590 INFO L256 TraceCheckUtils]: 27: Hoare triple {1858#(or (not (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0)) (bvslt (bvadd main_~p~0 (_ bv5 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~i~0 (_ bv2 32)) main_~ielen~0)) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} call __VERIFIER_assert((if ~bvsle32(0bv32, ~p~0) then 1bv32 else 0bv32)); {1565#true} is VALID [2018-11-23 11:33:08,591 INFO L273 TraceCheckUtils]: 26: Hoare triple {1858#(or (not (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0)) (bvslt (bvadd main_~p~0 (_ bv5 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~i~0 (_ bv2 32)) main_~ielen~0)) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} assume !!(~bvslt32(~i~0, ~ielen~0) && ~bvsgt32(~bufsize~0, 2bv32)); {1858#(or (not (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0)) (bvslt (bvadd main_~p~0 (_ bv5 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~i~0 (_ bv2 32)) main_~ielen~0)) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} is VALID [2018-11-23 11:33:08,629 INFO L273 TraceCheckUtils]: 25: Hoare triple {1892#(or (not (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0)) (bvslt (bvadd main_~p~0 (_ bv5 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~i~0 (_ bv3 32)) main_~ielen~0)) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} #t~post4 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post4);havoc #t~post4; {1858#(or (not (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0)) (bvslt (bvadd main_~p~0 (_ bv5 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~i~0 (_ bv2 32)) main_~ielen~0)) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} is VALID [2018-11-23 11:33:08,740 INFO L273 TraceCheckUtils]: 24: Hoare triple {1896#(or (not (bvslt (bvadd main_~p~0 (_ bv5 32)) main_~bufsize_0~0)) (not (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0)) (bvslt (bvadd main_~p~0 (_ bv7 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~i~0 (_ bv3 32)) main_~ielen~0)))} ~p~0 := ~bvadd32(2bv32, ~p~0); {1892#(or (not (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0)) (bvslt (bvadd main_~p~0 (_ bv5 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~i~0 (_ bv3 32)) main_~ielen~0)) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} is VALID [2018-11-23 11:33:08,741 INFO L268 TraceCheckUtils]: 23: Hoare quadruple {1565#true} {1896#(or (not (bvslt (bvadd main_~p~0 (_ bv5 32)) main_~bufsize_0~0)) (not (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0)) (bvslt (bvadd main_~p~0 (_ bv7 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~i~0 (_ bv3 32)) main_~ielen~0)))} #80#return; {1896#(or (not (bvslt (bvadd main_~p~0 (_ bv5 32)) main_~bufsize_0~0)) (not (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0)) (bvslt (bvadd main_~p~0 (_ bv7 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~i~0 (_ bv3 32)) main_~ielen~0)))} is VALID [2018-11-23 11:33:08,742 INFO L273 TraceCheckUtils]: 22: Hoare triple {1565#true} assume true; {1565#true} is VALID [2018-11-23 11:33:08,742 INFO L273 TraceCheckUtils]: 21: Hoare triple {1565#true} assume !(0bv32 == ~cond); {1565#true} is VALID [2018-11-23 11:33:08,742 INFO L273 TraceCheckUtils]: 20: Hoare triple {1565#true} ~cond := #in~cond; {1565#true} is VALID [2018-11-23 11:33:08,742 INFO L256 TraceCheckUtils]: 19: Hoare triple {1896#(or (not (bvslt (bvadd main_~p~0 (_ bv5 32)) main_~bufsize_0~0)) (not (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0)) (bvslt (bvadd main_~p~0 (_ bv7 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~i~0 (_ bv3 32)) main_~ielen~0)))} call __VERIFIER_assert((if ~bvslt32(~bvadd32(1bv32, ~p~0), ~bufsize_0~0) then 1bv32 else 0bv32)); {1565#true} is VALID [2018-11-23 11:33:08,743 INFO L268 TraceCheckUtils]: 18: Hoare quadruple {1565#true} {1896#(or (not (bvslt (bvadd main_~p~0 (_ bv5 32)) main_~bufsize_0~0)) (not (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0)) (bvslt (bvadd main_~p~0 (_ bv7 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~i~0 (_ bv3 32)) main_~ielen~0)))} #78#return; {1896#(or (not (bvslt (bvadd main_~p~0 (_ bv5 32)) main_~bufsize_0~0)) (not (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0)) (bvslt (bvadd main_~p~0 (_ bv7 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~i~0 (_ bv3 32)) main_~ielen~0)))} is VALID [2018-11-23 11:33:08,743 INFO L273 TraceCheckUtils]: 17: Hoare triple {1565#true} assume true; {1565#true} is VALID [2018-11-23 11:33:08,743 INFO L273 TraceCheckUtils]: 16: Hoare triple {1565#true} assume !(0bv32 == ~cond); {1565#true} is VALID [2018-11-23 11:33:08,744 INFO L273 TraceCheckUtils]: 15: Hoare triple {1565#true} ~cond := #in~cond; {1565#true} is VALID [2018-11-23 11:33:08,744 INFO L256 TraceCheckUtils]: 14: Hoare triple {1896#(or (not (bvslt (bvadd main_~p~0 (_ bv5 32)) main_~bufsize_0~0)) (not (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0)) (bvslt (bvadd main_~p~0 (_ bv7 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~i~0 (_ bv3 32)) main_~ielen~0)))} call __VERIFIER_assert((if ~bvsle32(0bv32, ~p~0) then 1bv32 else 0bv32)); {1565#true} is VALID [2018-11-23 11:33:08,745 INFO L273 TraceCheckUtils]: 13: Hoare triple {1896#(or (not (bvslt (bvadd main_~p~0 (_ bv5 32)) main_~bufsize_0~0)) (not (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0)) (bvslt (bvadd main_~p~0 (_ bv7 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~i~0 (_ bv3 32)) main_~ielen~0)))} assume !!(~bvslt32(~i~0, ~ielen~0) && ~bvsgt32(~bufsize~0, 2bv32)); {1896#(or (not (bvslt (bvadd main_~p~0 (_ bv5 32)) main_~bufsize_0~0)) (not (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0)) (bvslt (bvadd main_~p~0 (_ bv7 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~i~0 (_ bv3 32)) main_~ielen~0)))} is VALID [2018-11-23 11:33:08,746 INFO L273 TraceCheckUtils]: 12: Hoare triple {1933#(or (not (bvslt (bvadd main_~p~0 (_ bv5 32)) main_~bufsize_0~0)) (not (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0)) (bvslt main_~bufsize~0 (bvmul (_ bv2 32) main_~ielen~0)) (bvslt (bvadd main_~p~0 (_ bv7 32)) main_~bufsize_0~0) (not (bvslt (_ bv3 32) main_~ielen~0)))} assume !~bvslt32(~bufsize~0, ~bvmul32(2bv32, ~ielen~0));~i~0 := 0bv32; {1896#(or (not (bvslt (bvadd main_~p~0 (_ bv5 32)) main_~bufsize_0~0)) (not (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0)) (bvslt (bvadd main_~p~0 (_ bv7 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~i~0 (_ bv3 32)) main_~ielen~0)))} is VALID [2018-11-23 11:33:08,751 INFO L273 TraceCheckUtils]: 11: Hoare triple {1937#(or (bvslt main_~bufsize~0 main_~leader_len~0) (bvslt (bvadd main_~leader_len~0 (_ bv7 32)) main_~bufsize~0) (bvslt (bvadd (bvneg main_~leader_len~0) main_~bufsize~0) (bvmul (_ bv2 32) main_~ielen~0)) (not (bvslt (_ bv3 32) main_~ielen~0)) (not (bvslt (bvadd main_~leader_len~0 (_ bv5 32)) main_~bufsize~0)))} assume !~bvslt32(~bufsize~0, ~leader_len~0);~p~0 := 0bv32;~bufsize_0~0 := ~bufsize~0;~bufsize~0 := ~bvsub32(~bufsize~0, ~leader_len~0);~p~0 := ~bvadd32(~p~0, ~leader_len~0); {1933#(or (not (bvslt (bvadd main_~p~0 (_ bv5 32)) main_~bufsize_0~0)) (not (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0)) (bvslt main_~bufsize~0 (bvmul (_ bv2 32) main_~ielen~0)) (bvslt (bvadd main_~p~0 (_ bv7 32)) main_~bufsize_0~0) (not (bvslt (_ bv3 32) main_~ielen~0)))} is VALID [2018-11-23 11:33:08,752 INFO L273 TraceCheckUtils]: 10: Hoare triple {1937#(or (bvslt main_~bufsize~0 main_~leader_len~0) (bvslt (bvadd main_~leader_len~0 (_ bv7 32)) main_~bufsize~0) (bvslt (bvadd (bvneg main_~leader_len~0) main_~bufsize~0) (bvmul (_ bv2 32) main_~ielen~0)) (not (bvslt (_ bv3 32) main_~ielen~0)) (not (bvslt (bvadd main_~leader_len~0 (_ bv5 32)) main_~bufsize~0)))} assume ~bvsgt32(~ielen~0, 0bv32); {1937#(or (bvslt main_~bufsize~0 main_~leader_len~0) (bvslt (bvadd main_~leader_len~0 (_ bv7 32)) main_~bufsize~0) (bvslt (bvadd (bvneg main_~leader_len~0) main_~bufsize~0) (bvmul (_ bv2 32) main_~ielen~0)) (not (bvslt (_ bv3 32) main_~ielen~0)) (not (bvslt (bvadd main_~leader_len~0 (_ bv5 32)) main_~bufsize~0)))} is VALID [2018-11-23 11:33:08,752 INFO L273 TraceCheckUtils]: 9: Hoare triple {1944#(or (bvslt (bvadd main_~leader_len~0 (_ bv7 32)) main_~bufsize~0) (bvslt (bvadd (bvneg main_~leader_len~0) main_~bufsize~0) (bvmul (_ bv2 32) main_~ielen~0)) (not (bvslt (_ bv3 32) main_~ielen~0)) (not (bvsgt main_~bufsize~0 (_ bv0 32))) (not (bvslt (bvadd main_~leader_len~0 (_ bv5 32)) main_~bufsize~0)))} assume ~bvsgt32(~bufsize~0, 0bv32); {1937#(or (bvslt main_~bufsize~0 main_~leader_len~0) (bvslt (bvadd main_~leader_len~0 (_ bv7 32)) main_~bufsize~0) (bvslt (bvadd (bvneg main_~leader_len~0) main_~bufsize~0) (bvmul (_ bv2 32) main_~ielen~0)) (not (bvslt (_ bv3 32) main_~ielen~0)) (not (bvslt (bvadd main_~leader_len~0 (_ bv5 32)) main_~bufsize~0)))} is VALID [2018-11-23 11:33:08,753 INFO L273 TraceCheckUtils]: 8: Hoare triple {1948#(or (bvslt (bvadd main_~leader_len~0 (_ bv7 32)) main_~bufsize~0) (not (bvsgt main_~leader_len~0 (_ bv0 32))) (bvslt (bvadd (bvneg main_~leader_len~0) main_~bufsize~0) (bvmul (_ bv2 32) main_~ielen~0)) (not (bvslt (_ bv3 32) main_~ielen~0)) (not (bvsgt main_~bufsize~0 (_ bv0 32))) (not (bvslt (bvadd main_~leader_len~0 (_ bv5 32)) main_~bufsize~0)))} assume ~bvsgt32(~leader_len~0, 0bv32); {1944#(or (bvslt (bvadd main_~leader_len~0 (_ bv7 32)) main_~bufsize~0) (bvslt (bvadd (bvneg main_~leader_len~0) main_~bufsize~0) (bvmul (_ bv2 32) main_~ielen~0)) (not (bvslt (_ bv3 32) main_~ielen~0)) (not (bvsgt main_~bufsize~0 (_ bv0 32))) (not (bvslt (bvadd main_~leader_len~0 (_ bv5 32)) main_~bufsize~0)))} is VALID [2018-11-23 11:33:08,798 INFO L273 TraceCheckUtils]: 7: Hoare triple {1565#true} assume !!~bvslt32(~ielen~0, 1000000bv32); {1948#(or (bvslt (bvadd main_~leader_len~0 (_ bv7 32)) main_~bufsize~0) (not (bvsgt main_~leader_len~0 (_ bv0 32))) (bvslt (bvadd (bvneg main_~leader_len~0) main_~bufsize~0) (bvmul (_ bv2 32) main_~ielen~0)) (not (bvslt (_ bv3 32) main_~ielen~0)) (not (bvsgt main_~bufsize~0 (_ bv0 32))) (not (bvslt (bvadd main_~leader_len~0 (_ bv5 32)) main_~bufsize~0)))} is VALID [2018-11-23 11:33:08,798 INFO L273 TraceCheckUtils]: 6: Hoare triple {1565#true} assume !!~bvslt32(~bufsize~0, 1000000bv32); {1565#true} is VALID [2018-11-23 11:33:08,798 INFO L273 TraceCheckUtils]: 5: Hoare triple {1565#true} assume !!~bvslt32(~leader_len~0, 1000000bv32); {1565#true} is VALID [2018-11-23 11:33:08,799 INFO L273 TraceCheckUtils]: 4: Hoare triple {1565#true} havoc ~p~0;havoc ~i~0;havoc ~leader_len~0;havoc ~bufsize~0;havoc ~bufsize_0~0;havoc ~ielen~0;~leader_len~0 := #t~nondet1;havoc #t~nondet1;~bufsize~0 := #t~nondet2;havoc #t~nondet2;~ielen~0 := #t~nondet3;havoc #t~nondet3; {1565#true} is VALID [2018-11-23 11:33:08,799 INFO L256 TraceCheckUtils]: 3: Hoare triple {1565#true} call #t~ret5 := main(); {1565#true} is VALID [2018-11-23 11:33:08,799 INFO L268 TraceCheckUtils]: 2: Hoare quadruple {1565#true} {1565#true} #74#return; {1565#true} is VALID [2018-11-23 11:33:08,799 INFO L273 TraceCheckUtils]: 1: Hoare triple {1565#true} assume true; {1565#true} is VALID [2018-11-23 11:33:08,800 INFO L256 TraceCheckUtils]: 0: Hoare triple {1565#true} call ULTIMATE.init(); {1565#true} is VALID [2018-11-23 11:33:08,813 INFO L134 CoverageAnalysis]: Checked inductivity of 122 backedges. 33 proven. 35 refuted. 0 times theorem prover too weak. 54 trivial. 0 not checked. [2018-11-23 11:33:08,815 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 11:33:08,815 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [23, 19] total 39 [2018-11-23 11:33:08,816 INFO L78 Accepts]: Start accepts. Automaton has 39 states. Word has length 62 [2018-11-23 11:33:08,818 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 11:33:08,818 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 39 states. [2018-11-23 11:33:12,680 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 84 edges. 84 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 11:33:12,681 INFO L459 AbstractCegarLoop]: Interpolant automaton has 39 states [2018-11-23 11:33:12,681 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 39 interpolants. [2018-11-23 11:33:12,682 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=217, Invalid=1265, Unknown=0, NotChecked=0, Total=1482 [2018-11-23 11:33:12,682 INFO L87 Difference]: Start difference. First operand 61 states and 64 transitions. Second operand 39 states. [2018-11-23 11:33:15,333 WARN L180 SmtUtils]: Spent 114.00 ms on a formula simplification. DAG size of input: 27 DAG size of output: 25 [2018-11-23 11:33:29,381 WARN L180 SmtUtils]: Spent 285.00 ms on a formula simplification. DAG size of input: 37 DAG size of output: 34 [2018-11-23 11:33:33,795 WARN L180 SmtUtils]: Spent 127.00 ms on a formula simplification that was a NOOP. DAG size: 39 [2018-11-23 11:33:35,406 WARN L180 SmtUtils]: Spent 121.00 ms on a formula simplification that was a NOOP. DAG size: 38 [2018-11-23 11:33:36,631 WARN L180 SmtUtils]: Spent 312.00 ms on a formula simplification. DAG size of input: 40 DAG size of output: 39 [2018-11-23 11:33:40,565 WARN L180 SmtUtils]: Spent 157.00 ms on a formula simplification. DAG size of input: 31 DAG size of output: 30 [2018-11-23 11:33:43,434 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 11:33:43,434 INFO L93 Difference]: Finished difference Result 83 states and 92 transitions. [2018-11-23 11:33:43,435 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 32 states. [2018-11-23 11:33:43,435 INFO L78 Accepts]: Start accepts. Automaton has 39 states. Word has length 62 [2018-11-23 11:33:43,435 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 11:33:43,435 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 39 states. [2018-11-23 11:33:43,440 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 77 transitions. [2018-11-23 11:33:43,440 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 39 states. [2018-11-23 11:33:43,444 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 77 transitions. [2018-11-23 11:33:43,444 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 32 states and 77 transitions. [2018-11-23 11:33:48,174 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-23 11:33:48,177 INFO L225 Difference]: With dead ends: 83 [2018-11-23 11:33:48,177 INFO L226 Difference]: Without dead ends: 81 [2018-11-23 11:33:48,179 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 145 GetRequests, 84 SyntacticMatches, 2 SemanticMatches, 59 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 673 ImplicationChecksByTransitivity, 22.0s TimeCoverageRelationStatistics Valid=661, Invalid=2999, Unknown=0, NotChecked=0, Total=3660 [2018-11-23 11:33:48,179 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 81 states. [2018-11-23 11:33:48,303 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 81 to 81. [2018-11-23 11:33:48,304 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 11:33:48,304 INFO L82 GeneralOperation]: Start isEquivalent. First operand 81 states. Second operand 81 states. [2018-11-23 11:33:48,304 INFO L74 IsIncluded]: Start isIncluded. First operand 81 states. Second operand 81 states. [2018-11-23 11:33:48,304 INFO L87 Difference]: Start difference. First operand 81 states. Second operand 81 states. [2018-11-23 11:33:48,309 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 11:33:48,309 INFO L93 Difference]: Finished difference Result 81 states and 90 transitions. [2018-11-23 11:33:48,309 INFO L276 IsEmpty]: Start isEmpty. Operand 81 states and 90 transitions. [2018-11-23 11:33:48,310 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 11:33:48,310 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 11:33:48,310 INFO L74 IsIncluded]: Start isIncluded. First operand 81 states. Second operand 81 states. [2018-11-23 11:33:48,311 INFO L87 Difference]: Start difference. First operand 81 states. Second operand 81 states. [2018-11-23 11:33:48,315 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 11:33:48,315 INFO L93 Difference]: Finished difference Result 81 states and 90 transitions. [2018-11-23 11:33:48,315 INFO L276 IsEmpty]: Start isEmpty. Operand 81 states and 90 transitions. [2018-11-23 11:33:48,316 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 11:33:48,316 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 11:33:48,316 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 11:33:48,316 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 11:33:48,316 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 81 states. [2018-11-23 11:33:48,320 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 81 states to 81 states and 90 transitions. [2018-11-23 11:33:48,320 INFO L78 Accepts]: Start accepts. Automaton has 81 states and 90 transitions. Word has length 62 [2018-11-23 11:33:48,321 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 11:33:48,321 INFO L480 AbstractCegarLoop]: Abstraction has 81 states and 90 transitions. [2018-11-23 11:33:48,321 INFO L481 AbstractCegarLoop]: Interpolant automaton has 39 states. [2018-11-23 11:33:48,321 INFO L276 IsEmpty]: Start isEmpty. Operand 81 states and 90 transitions. [2018-11-23 11:33:48,323 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 71 [2018-11-23 11:33:48,323 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 11:33:48,323 INFO L402 BasicCegarLoop]: trace histogram [9, 8, 8, 5, 5, 4, 4, 4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 11:33:48,323 INFO L423 AbstractCegarLoop]: === Iteration 6 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 11:33:48,324 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 11:33:48,324 INFO L82 PathProgramCache]: Analyzing trace with hash -1545874326, now seen corresponding path program 4 times [2018-11-23 11:33:48,324 INFO L223 ckRefinementStrategy]: Switched to mode CVC4_FPBP [2018-11-23 11:33:48,324 INFO L69 tionRefinementEngine]: Using refinement strategy WolfRefinementStrategy No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4nyu Starting monitored process 7 with cvc4nyu --tear-down-incremental --print-success --lang smt --rewrite-divk (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 7 with cvc4nyu --tear-down-incremental --print-success --lang smt --rewrite-divk [2018-11-23 11:33:48,347 INFO L101 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2018-11-23 11:33:48,403 INFO L249 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2018-11-23 11:33:48,404 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 11:33:48,434 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 11:33:48,437 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 11:33:48,824 INFO L256 TraceCheckUtils]: 0: Hoare triple {2415#true} call ULTIMATE.init(); {2415#true} is VALID [2018-11-23 11:33:48,824 INFO L273 TraceCheckUtils]: 1: Hoare triple {2415#true} assume true; {2415#true} is VALID [2018-11-23 11:33:48,825 INFO L268 TraceCheckUtils]: 2: Hoare quadruple {2415#true} {2415#true} #74#return; {2415#true} is VALID [2018-11-23 11:33:48,825 INFO L256 TraceCheckUtils]: 3: Hoare triple {2415#true} call #t~ret5 := main(); {2415#true} is VALID [2018-11-23 11:33:48,825 INFO L273 TraceCheckUtils]: 4: Hoare triple {2415#true} havoc ~p~0;havoc ~i~0;havoc ~leader_len~0;havoc ~bufsize~0;havoc ~bufsize_0~0;havoc ~ielen~0;~leader_len~0 := #t~nondet1;havoc #t~nondet1;~bufsize~0 := #t~nondet2;havoc #t~nondet2;~ielen~0 := #t~nondet3;havoc #t~nondet3; {2415#true} is VALID [2018-11-23 11:33:48,825 INFO L273 TraceCheckUtils]: 5: Hoare triple {2415#true} assume !!~bvslt32(~leader_len~0, 1000000bv32); {2435#(bvslt main_~leader_len~0 (_ bv1000000 32))} is VALID [2018-11-23 11:33:48,826 INFO L273 TraceCheckUtils]: 6: Hoare triple {2435#(bvslt main_~leader_len~0 (_ bv1000000 32))} assume !!~bvslt32(~bufsize~0, 1000000bv32); {2435#(bvslt main_~leader_len~0 (_ bv1000000 32))} is VALID [2018-11-23 11:33:48,826 INFO L273 TraceCheckUtils]: 7: Hoare triple {2435#(bvslt main_~leader_len~0 (_ bv1000000 32))} assume !!~bvslt32(~ielen~0, 1000000bv32); {2435#(bvslt main_~leader_len~0 (_ bv1000000 32))} is VALID [2018-11-23 11:33:48,827 INFO L273 TraceCheckUtils]: 8: Hoare triple {2435#(bvslt main_~leader_len~0 (_ bv1000000 32))} assume ~bvsgt32(~leader_len~0, 0bv32); {2445#(and (bvslt main_~leader_len~0 (_ bv1000000 32)) (bvsgt main_~leader_len~0 (_ bv0 32)))} is VALID [2018-11-23 11:33:48,828 INFO L273 TraceCheckUtils]: 9: Hoare triple {2445#(and (bvslt main_~leader_len~0 (_ bv1000000 32)) (bvsgt main_~leader_len~0 (_ bv0 32)))} assume ~bvsgt32(~bufsize~0, 0bv32); {2445#(and (bvslt main_~leader_len~0 (_ bv1000000 32)) (bvsgt main_~leader_len~0 (_ bv0 32)))} is VALID [2018-11-23 11:33:48,828 INFO L273 TraceCheckUtils]: 10: Hoare triple {2445#(and (bvslt main_~leader_len~0 (_ bv1000000 32)) (bvsgt main_~leader_len~0 (_ bv0 32)))} assume ~bvsgt32(~ielen~0, 0bv32); {2445#(and (bvslt main_~leader_len~0 (_ bv1000000 32)) (bvsgt main_~leader_len~0 (_ bv0 32)))} is VALID [2018-11-23 11:33:48,829 INFO L273 TraceCheckUtils]: 11: Hoare triple {2445#(and (bvslt main_~leader_len~0 (_ bv1000000 32)) (bvsgt main_~leader_len~0 (_ bv0 32)))} assume !~bvslt32(~bufsize~0, ~leader_len~0);~p~0 := 0bv32;~bufsize_0~0 := ~bufsize~0;~bufsize~0 := ~bvsub32(~bufsize~0, ~leader_len~0);~p~0 := ~bvadd32(~p~0, ~leader_len~0); {2455#(and (bvslt main_~p~0 (_ bv1000000 32)) (bvsgt main_~p~0 (_ bv0 32)))} is VALID [2018-11-23 11:33:48,829 INFO L273 TraceCheckUtils]: 12: Hoare triple {2455#(and (bvslt main_~p~0 (_ bv1000000 32)) (bvsgt main_~p~0 (_ bv0 32)))} assume !~bvslt32(~bufsize~0, ~bvmul32(2bv32, ~ielen~0));~i~0 := 0bv32; {2455#(and (bvslt main_~p~0 (_ bv1000000 32)) (bvsgt main_~p~0 (_ bv0 32)))} is VALID [2018-11-23 11:33:48,830 INFO L273 TraceCheckUtils]: 13: Hoare triple {2455#(and (bvslt main_~p~0 (_ bv1000000 32)) (bvsgt main_~p~0 (_ bv0 32)))} assume !!(~bvslt32(~i~0, ~ielen~0) && ~bvsgt32(~bufsize~0, 2bv32)); {2455#(and (bvslt main_~p~0 (_ bv1000000 32)) (bvsgt main_~p~0 (_ bv0 32)))} is VALID [2018-11-23 11:33:48,830 INFO L256 TraceCheckUtils]: 14: Hoare triple {2455#(and (bvslt main_~p~0 (_ bv1000000 32)) (bvsgt main_~p~0 (_ bv0 32)))} call __VERIFIER_assert((if ~bvsle32(0bv32, ~p~0) then 1bv32 else 0bv32)); {2415#true} is VALID [2018-11-23 11:33:48,830 INFO L273 TraceCheckUtils]: 15: Hoare triple {2415#true} ~cond := #in~cond; {2415#true} is VALID [2018-11-23 11:33:48,830 INFO L273 TraceCheckUtils]: 16: Hoare triple {2415#true} assume !(0bv32 == ~cond); {2415#true} is VALID [2018-11-23 11:33:48,830 INFO L273 TraceCheckUtils]: 17: Hoare triple {2415#true} assume true; {2415#true} is VALID [2018-11-23 11:33:48,838 INFO L268 TraceCheckUtils]: 18: Hoare quadruple {2415#true} {2455#(and (bvslt main_~p~0 (_ bv1000000 32)) (bvsgt main_~p~0 (_ bv0 32)))} #78#return; {2455#(and (bvslt main_~p~0 (_ bv1000000 32)) (bvsgt main_~p~0 (_ bv0 32)))} is VALID [2018-11-23 11:33:48,838 INFO L256 TraceCheckUtils]: 19: Hoare triple {2455#(and (bvslt main_~p~0 (_ bv1000000 32)) (bvsgt main_~p~0 (_ bv0 32)))} call __VERIFIER_assert((if ~bvslt32(~bvadd32(1bv32, ~p~0), ~bufsize_0~0) then 1bv32 else 0bv32)); {2415#true} is VALID [2018-11-23 11:33:48,838 INFO L273 TraceCheckUtils]: 20: Hoare triple {2415#true} ~cond := #in~cond; {2415#true} is VALID [2018-11-23 11:33:48,839 INFO L273 TraceCheckUtils]: 21: Hoare triple {2415#true} assume !(0bv32 == ~cond); {2415#true} is VALID [2018-11-23 11:33:48,839 INFO L273 TraceCheckUtils]: 22: Hoare triple {2415#true} assume true; {2415#true} is VALID [2018-11-23 11:33:48,840 INFO L268 TraceCheckUtils]: 23: Hoare quadruple {2415#true} {2455#(and (bvslt main_~p~0 (_ bv1000000 32)) (bvsgt main_~p~0 (_ bv0 32)))} #80#return; {2455#(and (bvslt main_~p~0 (_ bv1000000 32)) (bvsgt main_~p~0 (_ bv0 32)))} is VALID [2018-11-23 11:33:48,848 INFO L273 TraceCheckUtils]: 24: Hoare triple {2455#(and (bvslt main_~p~0 (_ bv1000000 32)) (bvsgt main_~p~0 (_ bv0 32)))} ~p~0 := ~bvadd32(2bv32, ~p~0); {2495#(and (bvsgt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv1000000 32)))} is VALID [2018-11-23 11:33:48,849 INFO L273 TraceCheckUtils]: 25: Hoare triple {2495#(and (bvsgt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv1000000 32)))} #t~post4 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post4);havoc #t~post4; {2495#(and (bvsgt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv1000000 32)))} is VALID [2018-11-23 11:33:48,850 INFO L273 TraceCheckUtils]: 26: Hoare triple {2495#(and (bvsgt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv1000000 32)))} assume !!(~bvslt32(~i~0, ~ielen~0) && ~bvsgt32(~bufsize~0, 2bv32)); {2495#(and (bvsgt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv1000000 32)))} is VALID [2018-11-23 11:33:48,850 INFO L256 TraceCheckUtils]: 27: Hoare triple {2495#(and (bvsgt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv1000000 32)))} call __VERIFIER_assert((if ~bvsle32(0bv32, ~p~0) then 1bv32 else 0bv32)); {2415#true} is VALID [2018-11-23 11:33:48,850 INFO L273 TraceCheckUtils]: 28: Hoare triple {2415#true} ~cond := #in~cond; {2415#true} is VALID [2018-11-23 11:33:48,850 INFO L273 TraceCheckUtils]: 29: Hoare triple {2415#true} assume !(0bv32 == ~cond); {2415#true} is VALID [2018-11-23 11:33:48,850 INFO L273 TraceCheckUtils]: 30: Hoare triple {2415#true} assume true; {2415#true} is VALID [2018-11-23 11:33:48,851 INFO L268 TraceCheckUtils]: 31: Hoare quadruple {2415#true} {2495#(and (bvsgt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv1000000 32)))} #78#return; {2495#(and (bvsgt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv1000000 32)))} is VALID [2018-11-23 11:33:48,851 INFO L256 TraceCheckUtils]: 32: Hoare triple {2495#(and (bvsgt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv1000000 32)))} call __VERIFIER_assert((if ~bvslt32(~bvadd32(1bv32, ~p~0), ~bufsize_0~0) then 1bv32 else 0bv32)); {2415#true} is VALID [2018-11-23 11:33:48,851 INFO L273 TraceCheckUtils]: 33: Hoare triple {2415#true} ~cond := #in~cond; {2415#true} is VALID [2018-11-23 11:33:48,851 INFO L273 TraceCheckUtils]: 34: Hoare triple {2415#true} assume !(0bv32 == ~cond); {2415#true} is VALID [2018-11-23 11:33:48,852 INFO L273 TraceCheckUtils]: 35: Hoare triple {2415#true} assume true; {2415#true} is VALID [2018-11-23 11:33:48,853 INFO L268 TraceCheckUtils]: 36: Hoare quadruple {2415#true} {2495#(and (bvsgt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv1000000 32)))} #80#return; {2495#(and (bvsgt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv1000000 32)))} is VALID [2018-11-23 11:33:48,863 INFO L273 TraceCheckUtils]: 37: Hoare triple {2495#(and (bvsgt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv1000000 32)))} ~p~0 := ~bvadd32(2bv32, ~p~0); {2535#(and (bvsgt (bvadd main_~p~0 (_ bv4294967292 32)) (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967292 32)) (_ bv1000000 32)))} is VALID [2018-11-23 11:33:48,864 INFO L273 TraceCheckUtils]: 38: Hoare triple {2535#(and (bvsgt (bvadd main_~p~0 (_ bv4294967292 32)) (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967292 32)) (_ bv1000000 32)))} #t~post4 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post4);havoc #t~post4; {2535#(and (bvsgt (bvadd main_~p~0 (_ bv4294967292 32)) (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967292 32)) (_ bv1000000 32)))} is VALID [2018-11-23 11:33:48,864 INFO L273 TraceCheckUtils]: 39: Hoare triple {2535#(and (bvsgt (bvadd main_~p~0 (_ bv4294967292 32)) (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967292 32)) (_ bv1000000 32)))} assume !!(~bvslt32(~i~0, ~ielen~0) && ~bvsgt32(~bufsize~0, 2bv32)); {2535#(and (bvsgt (bvadd main_~p~0 (_ bv4294967292 32)) (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967292 32)) (_ bv1000000 32)))} is VALID [2018-11-23 11:33:48,864 INFO L256 TraceCheckUtils]: 40: Hoare triple {2535#(and (bvsgt (bvadd main_~p~0 (_ bv4294967292 32)) (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967292 32)) (_ bv1000000 32)))} call __VERIFIER_assert((if ~bvsle32(0bv32, ~p~0) then 1bv32 else 0bv32)); {2415#true} is VALID [2018-11-23 11:33:48,865 INFO L273 TraceCheckUtils]: 41: Hoare triple {2415#true} ~cond := #in~cond; {2415#true} is VALID [2018-11-23 11:33:48,865 INFO L273 TraceCheckUtils]: 42: Hoare triple {2415#true} assume !(0bv32 == ~cond); {2415#true} is VALID [2018-11-23 11:33:48,865 INFO L273 TraceCheckUtils]: 43: Hoare triple {2415#true} assume true; {2415#true} is VALID [2018-11-23 11:33:48,865 INFO L268 TraceCheckUtils]: 44: Hoare quadruple {2415#true} {2535#(and (bvsgt (bvadd main_~p~0 (_ bv4294967292 32)) (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967292 32)) (_ bv1000000 32)))} #78#return; {2535#(and (bvsgt (bvadd main_~p~0 (_ bv4294967292 32)) (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967292 32)) (_ bv1000000 32)))} is VALID [2018-11-23 11:33:48,866 INFO L256 TraceCheckUtils]: 45: Hoare triple {2535#(and (bvsgt (bvadd main_~p~0 (_ bv4294967292 32)) (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967292 32)) (_ bv1000000 32)))} call __VERIFIER_assert((if ~bvslt32(~bvadd32(1bv32, ~p~0), ~bufsize_0~0) then 1bv32 else 0bv32)); {2415#true} is VALID [2018-11-23 11:33:48,866 INFO L273 TraceCheckUtils]: 46: Hoare triple {2415#true} ~cond := #in~cond; {2415#true} is VALID [2018-11-23 11:33:48,866 INFO L273 TraceCheckUtils]: 47: Hoare triple {2415#true} assume !(0bv32 == ~cond); {2415#true} is VALID [2018-11-23 11:33:48,866 INFO L273 TraceCheckUtils]: 48: Hoare triple {2415#true} assume true; {2415#true} is VALID [2018-11-23 11:33:48,867 INFO L268 TraceCheckUtils]: 49: Hoare quadruple {2415#true} {2535#(and (bvsgt (bvadd main_~p~0 (_ bv4294967292 32)) (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967292 32)) (_ bv1000000 32)))} #80#return; {2535#(and (bvsgt (bvadd main_~p~0 (_ bv4294967292 32)) (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967292 32)) (_ bv1000000 32)))} is VALID [2018-11-23 11:33:48,875 INFO L273 TraceCheckUtils]: 50: Hoare triple {2535#(and (bvsgt (bvadd main_~p~0 (_ bv4294967292 32)) (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967292 32)) (_ bv1000000 32)))} ~p~0 := ~bvadd32(2bv32, ~p~0); {2575#(and (bvslt (bvadd main_~p~0 (_ bv4294967290 32)) (_ bv1000000 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967290 32)) (_ bv0 32)))} is VALID [2018-11-23 11:33:48,876 INFO L273 TraceCheckUtils]: 51: Hoare triple {2575#(and (bvslt (bvadd main_~p~0 (_ bv4294967290 32)) (_ bv1000000 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967290 32)) (_ bv0 32)))} #t~post4 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post4);havoc #t~post4; {2575#(and (bvslt (bvadd main_~p~0 (_ bv4294967290 32)) (_ bv1000000 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967290 32)) (_ bv0 32)))} is VALID [2018-11-23 11:33:48,876 INFO L273 TraceCheckUtils]: 52: Hoare triple {2575#(and (bvslt (bvadd main_~p~0 (_ bv4294967290 32)) (_ bv1000000 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967290 32)) (_ bv0 32)))} assume !!(~bvslt32(~i~0, ~ielen~0) && ~bvsgt32(~bufsize~0, 2bv32)); {2575#(and (bvslt (bvadd main_~p~0 (_ bv4294967290 32)) (_ bv1000000 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967290 32)) (_ bv0 32)))} is VALID [2018-11-23 11:33:48,876 INFO L256 TraceCheckUtils]: 53: Hoare triple {2575#(and (bvslt (bvadd main_~p~0 (_ bv4294967290 32)) (_ bv1000000 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967290 32)) (_ bv0 32)))} call __VERIFIER_assert((if ~bvsle32(0bv32, ~p~0) then 1bv32 else 0bv32)); {2415#true} is VALID [2018-11-23 11:33:48,877 INFO L273 TraceCheckUtils]: 54: Hoare triple {2415#true} ~cond := #in~cond; {2415#true} is VALID [2018-11-23 11:33:48,877 INFO L273 TraceCheckUtils]: 55: Hoare triple {2415#true} assume !(0bv32 == ~cond); {2415#true} is VALID [2018-11-23 11:33:48,877 INFO L273 TraceCheckUtils]: 56: Hoare triple {2415#true} assume true; {2415#true} is VALID [2018-11-23 11:33:48,879 INFO L268 TraceCheckUtils]: 57: Hoare quadruple {2415#true} {2575#(and (bvslt (bvadd main_~p~0 (_ bv4294967290 32)) (_ bv1000000 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967290 32)) (_ bv0 32)))} #78#return; {2575#(and (bvslt (bvadd main_~p~0 (_ bv4294967290 32)) (_ bv1000000 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967290 32)) (_ bv0 32)))} is VALID [2018-11-23 11:33:48,879 INFO L256 TraceCheckUtils]: 58: Hoare triple {2575#(and (bvslt (bvadd main_~p~0 (_ bv4294967290 32)) (_ bv1000000 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967290 32)) (_ bv0 32)))} call __VERIFIER_assert((if ~bvslt32(~bvadd32(1bv32, ~p~0), ~bufsize_0~0) then 1bv32 else 0bv32)); {2415#true} is VALID [2018-11-23 11:33:48,879 INFO L273 TraceCheckUtils]: 59: Hoare triple {2415#true} ~cond := #in~cond; {2415#true} is VALID [2018-11-23 11:33:48,880 INFO L273 TraceCheckUtils]: 60: Hoare triple {2415#true} assume !(0bv32 == ~cond); {2415#true} is VALID [2018-11-23 11:33:48,880 INFO L273 TraceCheckUtils]: 61: Hoare triple {2415#true} assume true; {2415#true} is VALID [2018-11-23 11:33:48,881 INFO L268 TraceCheckUtils]: 62: Hoare quadruple {2415#true} {2575#(and (bvslt (bvadd main_~p~0 (_ bv4294967290 32)) (_ bv1000000 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967290 32)) (_ bv0 32)))} #80#return; {2575#(and (bvslt (bvadd main_~p~0 (_ bv4294967290 32)) (_ bv1000000 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967290 32)) (_ bv0 32)))} is VALID [2018-11-23 11:33:48,894 INFO L273 TraceCheckUtils]: 63: Hoare triple {2575#(and (bvslt (bvadd main_~p~0 (_ bv4294967290 32)) (_ bv1000000 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967290 32)) (_ bv0 32)))} ~p~0 := ~bvadd32(2bv32, ~p~0); {2615#(and (bvslt (bvadd main_~p~0 (_ bv4294967288 32)) (_ bv1000000 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967288 32)) (_ bv0 32)))} is VALID [2018-11-23 11:33:48,895 INFO L273 TraceCheckUtils]: 64: Hoare triple {2615#(and (bvslt (bvadd main_~p~0 (_ bv4294967288 32)) (_ bv1000000 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967288 32)) (_ bv0 32)))} #t~post4 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post4);havoc #t~post4; {2615#(and (bvslt (bvadd main_~p~0 (_ bv4294967288 32)) (_ bv1000000 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967288 32)) (_ bv0 32)))} is VALID [2018-11-23 11:33:48,895 INFO L273 TraceCheckUtils]: 65: Hoare triple {2615#(and (bvslt (bvadd main_~p~0 (_ bv4294967288 32)) (_ bv1000000 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967288 32)) (_ bv0 32)))} assume !!(~bvslt32(~i~0, ~ielen~0) && ~bvsgt32(~bufsize~0, 2bv32)); {2615#(and (bvslt (bvadd main_~p~0 (_ bv4294967288 32)) (_ bv1000000 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967288 32)) (_ bv0 32)))} is VALID [2018-11-23 11:33:48,897 INFO L256 TraceCheckUtils]: 66: Hoare triple {2615#(and (bvslt (bvadd main_~p~0 (_ bv4294967288 32)) (_ bv1000000 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967288 32)) (_ bv0 32)))} call __VERIFIER_assert((if ~bvsle32(0bv32, ~p~0) then 1bv32 else 0bv32)); {2625#(= (bvadd |__VERIFIER_assert_#in~cond| (_ bv4294967295 32)) (_ bv0 32))} is VALID [2018-11-23 11:33:48,898 INFO L273 TraceCheckUtils]: 67: Hoare triple {2625#(= (bvadd |__VERIFIER_assert_#in~cond| (_ bv4294967295 32)) (_ bv0 32))} ~cond := #in~cond; {2629#(= (bvadd __VERIFIER_assert_~cond (_ bv4294967295 32)) (_ bv0 32))} is VALID [2018-11-23 11:33:48,898 INFO L273 TraceCheckUtils]: 68: Hoare triple {2629#(= (bvadd __VERIFIER_assert_~cond (_ bv4294967295 32)) (_ bv0 32))} assume 0bv32 == ~cond; {2416#false} is VALID [2018-11-23 11:33:48,898 INFO L273 TraceCheckUtils]: 69: Hoare triple {2416#false} assume !false; {2416#false} is VALID [2018-11-23 11:33:48,904 INFO L134 CoverageAnalysis]: Checked inductivity of 166 backedges. 16 proven. 38 refuted. 0 times theorem prover too weak. 112 trivial. 0 not checked. [2018-11-23 11:33:48,904 INFO L316 TraceCheckSpWp]: Computing backward predicates... [2018-11-23 11:33:49,299 INFO L273 TraceCheckUtils]: 69: Hoare triple {2416#false} assume !false; {2416#false} is VALID [2018-11-23 11:33:49,299 INFO L273 TraceCheckUtils]: 68: Hoare triple {2639#(not (= (_ bv0 32) __VERIFIER_assert_~cond))} assume 0bv32 == ~cond; {2416#false} is VALID [2018-11-23 11:33:49,300 INFO L273 TraceCheckUtils]: 67: Hoare triple {2643#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} ~cond := #in~cond; {2639#(not (= (_ bv0 32) __VERIFIER_assert_~cond))} is VALID [2018-11-23 11:33:49,301 INFO L256 TraceCheckUtils]: 66: Hoare triple {2647#(bvsle (_ bv0 32) main_~p~0)} call __VERIFIER_assert((if ~bvsle32(0bv32, ~p~0) then 1bv32 else 0bv32)); {2643#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} is VALID [2018-11-23 11:33:49,301 INFO L273 TraceCheckUtils]: 65: Hoare triple {2647#(bvsle (_ bv0 32) main_~p~0)} assume !!(~bvslt32(~i~0, ~ielen~0) && ~bvsgt32(~bufsize~0, 2bv32)); {2647#(bvsle (_ bv0 32) main_~p~0)} is VALID [2018-11-23 11:33:49,301 INFO L273 TraceCheckUtils]: 64: Hoare triple {2647#(bvsle (_ bv0 32) main_~p~0)} #t~post4 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post4);havoc #t~post4; {2647#(bvsle (_ bv0 32) main_~p~0)} is VALID [2018-11-23 11:33:49,302 INFO L273 TraceCheckUtils]: 63: Hoare triple {2657#(bvsle (_ bv0 32) (bvadd main_~p~0 (_ bv2 32)))} ~p~0 := ~bvadd32(2bv32, ~p~0); {2647#(bvsle (_ bv0 32) main_~p~0)} is VALID [2018-11-23 11:33:49,303 INFO L268 TraceCheckUtils]: 62: Hoare quadruple {2415#true} {2657#(bvsle (_ bv0 32) (bvadd main_~p~0 (_ bv2 32)))} #80#return; {2657#(bvsle (_ bv0 32) (bvadd main_~p~0 (_ bv2 32)))} is VALID [2018-11-23 11:33:49,303 INFO L273 TraceCheckUtils]: 61: Hoare triple {2415#true} assume true; {2415#true} is VALID [2018-11-23 11:33:49,304 INFO L273 TraceCheckUtils]: 60: Hoare triple {2415#true} assume !(0bv32 == ~cond); {2415#true} is VALID [2018-11-23 11:33:49,304 INFO L273 TraceCheckUtils]: 59: Hoare triple {2415#true} ~cond := #in~cond; {2415#true} is VALID [2018-11-23 11:33:49,304 INFO L256 TraceCheckUtils]: 58: Hoare triple {2657#(bvsle (_ bv0 32) (bvadd main_~p~0 (_ bv2 32)))} call __VERIFIER_assert((if ~bvslt32(~bvadd32(1bv32, ~p~0), ~bufsize_0~0) then 1bv32 else 0bv32)); {2415#true} is VALID [2018-11-23 11:33:49,306 INFO L268 TraceCheckUtils]: 57: Hoare quadruple {2415#true} {2657#(bvsle (_ bv0 32) (bvadd main_~p~0 (_ bv2 32)))} #78#return; {2657#(bvsle (_ bv0 32) (bvadd main_~p~0 (_ bv2 32)))} is VALID [2018-11-23 11:33:49,306 INFO L273 TraceCheckUtils]: 56: Hoare triple {2415#true} assume true; {2415#true} is VALID [2018-11-23 11:33:49,307 INFO L273 TraceCheckUtils]: 55: Hoare triple {2415#true} assume !(0bv32 == ~cond); {2415#true} is VALID [2018-11-23 11:33:49,307 INFO L273 TraceCheckUtils]: 54: Hoare triple {2415#true} ~cond := #in~cond; {2415#true} is VALID [2018-11-23 11:33:49,307 INFO L256 TraceCheckUtils]: 53: Hoare triple {2657#(bvsle (_ bv0 32) (bvadd main_~p~0 (_ bv2 32)))} call __VERIFIER_assert((if ~bvsle32(0bv32, ~p~0) then 1bv32 else 0bv32)); {2415#true} is VALID [2018-11-23 11:33:49,311 INFO L273 TraceCheckUtils]: 52: Hoare triple {2657#(bvsle (_ bv0 32) (bvadd main_~p~0 (_ bv2 32)))} assume !!(~bvslt32(~i~0, ~ielen~0) && ~bvsgt32(~bufsize~0, 2bv32)); {2657#(bvsle (_ bv0 32) (bvadd main_~p~0 (_ bv2 32)))} is VALID [2018-11-23 11:33:49,311 INFO L273 TraceCheckUtils]: 51: Hoare triple {2657#(bvsle (_ bv0 32) (bvadd main_~p~0 (_ bv2 32)))} #t~post4 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post4);havoc #t~post4; {2657#(bvsle (_ bv0 32) (bvadd main_~p~0 (_ bv2 32)))} is VALID [2018-11-23 11:33:49,313 INFO L273 TraceCheckUtils]: 50: Hoare triple {2697#(bvsle (_ bv0 32) (bvadd main_~p~0 (_ bv4 32)))} ~p~0 := ~bvadd32(2bv32, ~p~0); {2657#(bvsle (_ bv0 32) (bvadd main_~p~0 (_ bv2 32)))} is VALID [2018-11-23 11:33:49,314 INFO L268 TraceCheckUtils]: 49: Hoare quadruple {2415#true} {2697#(bvsle (_ bv0 32) (bvadd main_~p~0 (_ bv4 32)))} #80#return; {2697#(bvsle (_ bv0 32) (bvadd main_~p~0 (_ bv4 32)))} is VALID [2018-11-23 11:33:49,314 INFO L273 TraceCheckUtils]: 48: Hoare triple {2415#true} assume true; {2415#true} is VALID [2018-11-23 11:33:49,315 INFO L273 TraceCheckUtils]: 47: Hoare triple {2415#true} assume !(0bv32 == ~cond); {2415#true} is VALID [2018-11-23 11:33:49,315 INFO L273 TraceCheckUtils]: 46: Hoare triple {2415#true} ~cond := #in~cond; {2415#true} is VALID [2018-11-23 11:33:49,315 INFO L256 TraceCheckUtils]: 45: Hoare triple {2697#(bvsle (_ bv0 32) (bvadd main_~p~0 (_ bv4 32)))} call __VERIFIER_assert((if ~bvslt32(~bvadd32(1bv32, ~p~0), ~bufsize_0~0) then 1bv32 else 0bv32)); {2415#true} is VALID [2018-11-23 11:33:49,316 INFO L268 TraceCheckUtils]: 44: Hoare quadruple {2415#true} {2697#(bvsle (_ bv0 32) (bvadd main_~p~0 (_ bv4 32)))} #78#return; {2697#(bvsle (_ bv0 32) (bvadd main_~p~0 (_ bv4 32)))} is VALID [2018-11-23 11:33:49,316 INFO L273 TraceCheckUtils]: 43: Hoare triple {2415#true} assume true; {2415#true} is VALID [2018-11-23 11:33:49,316 INFO L273 TraceCheckUtils]: 42: Hoare triple {2415#true} assume !(0bv32 == ~cond); {2415#true} is VALID [2018-11-23 11:33:49,316 INFO L273 TraceCheckUtils]: 41: Hoare triple {2415#true} ~cond := #in~cond; {2415#true} is VALID [2018-11-23 11:33:49,316 INFO L256 TraceCheckUtils]: 40: Hoare triple {2697#(bvsle (_ bv0 32) (bvadd main_~p~0 (_ bv4 32)))} call __VERIFIER_assert((if ~bvsle32(0bv32, ~p~0) then 1bv32 else 0bv32)); {2415#true} is VALID [2018-11-23 11:33:49,317 INFO L273 TraceCheckUtils]: 39: Hoare triple {2697#(bvsle (_ bv0 32) (bvadd main_~p~0 (_ bv4 32)))} assume !!(~bvslt32(~i~0, ~ielen~0) && ~bvsgt32(~bufsize~0, 2bv32)); {2697#(bvsle (_ bv0 32) (bvadd main_~p~0 (_ bv4 32)))} is VALID [2018-11-23 11:33:49,317 INFO L273 TraceCheckUtils]: 38: Hoare triple {2697#(bvsle (_ bv0 32) (bvadd main_~p~0 (_ bv4 32)))} #t~post4 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post4);havoc #t~post4; {2697#(bvsle (_ bv0 32) (bvadd main_~p~0 (_ bv4 32)))} is VALID [2018-11-23 11:33:49,319 INFO L273 TraceCheckUtils]: 37: Hoare triple {2737#(bvsle (_ bv0 32) (bvadd main_~p~0 (_ bv6 32)))} ~p~0 := ~bvadd32(2bv32, ~p~0); {2697#(bvsle (_ bv0 32) (bvadd main_~p~0 (_ bv4 32)))} is VALID [2018-11-23 11:33:49,321 INFO L268 TraceCheckUtils]: 36: Hoare quadruple {2415#true} {2737#(bvsle (_ bv0 32) (bvadd main_~p~0 (_ bv6 32)))} #80#return; {2737#(bvsle (_ bv0 32) (bvadd main_~p~0 (_ bv6 32)))} is VALID [2018-11-23 11:33:49,321 INFO L273 TraceCheckUtils]: 35: Hoare triple {2415#true} assume true; {2415#true} is VALID [2018-11-23 11:33:49,321 INFO L273 TraceCheckUtils]: 34: Hoare triple {2415#true} assume !(0bv32 == ~cond); {2415#true} is VALID [2018-11-23 11:33:49,321 INFO L273 TraceCheckUtils]: 33: Hoare triple {2415#true} ~cond := #in~cond; {2415#true} is VALID [2018-11-23 11:33:49,322 INFO L256 TraceCheckUtils]: 32: Hoare triple {2737#(bvsle (_ bv0 32) (bvadd main_~p~0 (_ bv6 32)))} call __VERIFIER_assert((if ~bvslt32(~bvadd32(1bv32, ~p~0), ~bufsize_0~0) then 1bv32 else 0bv32)); {2415#true} is VALID [2018-11-23 11:33:49,323 INFO L268 TraceCheckUtils]: 31: Hoare quadruple {2415#true} {2737#(bvsle (_ bv0 32) (bvadd main_~p~0 (_ bv6 32)))} #78#return; {2737#(bvsle (_ bv0 32) (bvadd main_~p~0 (_ bv6 32)))} is VALID [2018-11-23 11:33:49,323 INFO L273 TraceCheckUtils]: 30: Hoare triple {2415#true} assume true; {2415#true} is VALID [2018-11-23 11:33:49,323 INFO L273 TraceCheckUtils]: 29: Hoare triple {2415#true} assume !(0bv32 == ~cond); {2415#true} is VALID [2018-11-23 11:33:49,323 INFO L273 TraceCheckUtils]: 28: Hoare triple {2415#true} ~cond := #in~cond; {2415#true} is VALID [2018-11-23 11:33:49,323 INFO L256 TraceCheckUtils]: 27: Hoare triple {2737#(bvsle (_ bv0 32) (bvadd main_~p~0 (_ bv6 32)))} call __VERIFIER_assert((if ~bvsle32(0bv32, ~p~0) then 1bv32 else 0bv32)); {2415#true} is VALID [2018-11-23 11:33:49,324 INFO L273 TraceCheckUtils]: 26: Hoare triple {2737#(bvsle (_ bv0 32) (bvadd main_~p~0 (_ bv6 32)))} assume !!(~bvslt32(~i~0, ~ielen~0) && ~bvsgt32(~bufsize~0, 2bv32)); {2737#(bvsle (_ bv0 32) (bvadd main_~p~0 (_ bv6 32)))} is VALID [2018-11-23 11:33:49,324 INFO L273 TraceCheckUtils]: 25: Hoare triple {2737#(bvsle (_ bv0 32) (bvadd main_~p~0 (_ bv6 32)))} #t~post4 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post4);havoc #t~post4; {2737#(bvsle (_ bv0 32) (bvadd main_~p~0 (_ bv6 32)))} is VALID [2018-11-23 11:33:49,327 INFO L273 TraceCheckUtils]: 24: Hoare triple {2777#(bvsle (_ bv0 32) (bvadd main_~p~0 (_ bv8 32)))} ~p~0 := ~bvadd32(2bv32, ~p~0); {2737#(bvsle (_ bv0 32) (bvadd main_~p~0 (_ bv6 32)))} is VALID [2018-11-23 11:33:49,328 INFO L268 TraceCheckUtils]: 23: Hoare quadruple {2415#true} {2777#(bvsle (_ bv0 32) (bvadd main_~p~0 (_ bv8 32)))} #80#return; {2777#(bvsle (_ bv0 32) (bvadd main_~p~0 (_ bv8 32)))} is VALID [2018-11-23 11:33:49,328 INFO L273 TraceCheckUtils]: 22: Hoare triple {2415#true} assume true; {2415#true} is VALID [2018-11-23 11:33:49,328 INFO L273 TraceCheckUtils]: 21: Hoare triple {2415#true} assume !(0bv32 == ~cond); {2415#true} is VALID [2018-11-23 11:33:49,329 INFO L273 TraceCheckUtils]: 20: Hoare triple {2415#true} ~cond := #in~cond; {2415#true} is VALID [2018-11-23 11:33:49,329 INFO L256 TraceCheckUtils]: 19: Hoare triple {2777#(bvsle (_ bv0 32) (bvadd main_~p~0 (_ bv8 32)))} call __VERIFIER_assert((if ~bvslt32(~bvadd32(1bv32, ~p~0), ~bufsize_0~0) then 1bv32 else 0bv32)); {2415#true} is VALID [2018-11-23 11:33:49,329 INFO L268 TraceCheckUtils]: 18: Hoare quadruple {2415#true} {2777#(bvsle (_ bv0 32) (bvadd main_~p~0 (_ bv8 32)))} #78#return; {2777#(bvsle (_ bv0 32) (bvadd main_~p~0 (_ bv8 32)))} is VALID [2018-11-23 11:33:49,329 INFO L273 TraceCheckUtils]: 17: Hoare triple {2415#true} assume true; {2415#true} is VALID [2018-11-23 11:33:49,330 INFO L273 TraceCheckUtils]: 16: Hoare triple {2415#true} assume !(0bv32 == ~cond); {2415#true} is VALID [2018-11-23 11:33:49,330 INFO L273 TraceCheckUtils]: 15: Hoare triple {2415#true} ~cond := #in~cond; {2415#true} is VALID [2018-11-23 11:33:49,330 INFO L256 TraceCheckUtils]: 14: Hoare triple {2777#(bvsle (_ bv0 32) (bvadd main_~p~0 (_ bv8 32)))} call __VERIFIER_assert((if ~bvsle32(0bv32, ~p~0) then 1bv32 else 0bv32)); {2415#true} is VALID [2018-11-23 11:33:49,330 INFO L273 TraceCheckUtils]: 13: Hoare triple {2777#(bvsle (_ bv0 32) (bvadd main_~p~0 (_ bv8 32)))} assume !!(~bvslt32(~i~0, ~ielen~0) && ~bvsgt32(~bufsize~0, 2bv32)); {2777#(bvsle (_ bv0 32) (bvadd main_~p~0 (_ bv8 32)))} is VALID [2018-11-23 11:33:49,330 INFO L273 TraceCheckUtils]: 12: Hoare triple {2777#(bvsle (_ bv0 32) (bvadd main_~p~0 (_ bv8 32)))} assume !~bvslt32(~bufsize~0, ~bvmul32(2bv32, ~ielen~0));~i~0 := 0bv32; {2777#(bvsle (_ bv0 32) (bvadd main_~p~0 (_ bv8 32)))} is VALID [2018-11-23 11:33:49,331 INFO L273 TraceCheckUtils]: 11: Hoare triple {2817#(bvsle (_ bv0 32) (bvadd main_~leader_len~0 (_ bv8 32)))} assume !~bvslt32(~bufsize~0, ~leader_len~0);~p~0 := 0bv32;~bufsize_0~0 := ~bufsize~0;~bufsize~0 := ~bvsub32(~bufsize~0, ~leader_len~0);~p~0 := ~bvadd32(~p~0, ~leader_len~0); {2777#(bvsle (_ bv0 32) (bvadd main_~p~0 (_ bv8 32)))} is VALID [2018-11-23 11:33:49,331 INFO L273 TraceCheckUtils]: 10: Hoare triple {2817#(bvsle (_ bv0 32) (bvadd main_~leader_len~0 (_ bv8 32)))} assume ~bvsgt32(~ielen~0, 0bv32); {2817#(bvsle (_ bv0 32) (bvadd main_~leader_len~0 (_ bv8 32)))} is VALID [2018-11-23 11:33:49,332 INFO L273 TraceCheckUtils]: 9: Hoare triple {2817#(bvsle (_ bv0 32) (bvadd main_~leader_len~0 (_ bv8 32)))} assume ~bvsgt32(~bufsize~0, 0bv32); {2817#(bvsle (_ bv0 32) (bvadd main_~leader_len~0 (_ bv8 32)))} is VALID [2018-11-23 11:33:49,332 INFO L273 TraceCheckUtils]: 8: Hoare triple {2827#(or (not (bvsgt main_~leader_len~0 (_ bv0 32))) (bvsle (_ bv0 32) (bvadd main_~leader_len~0 (_ bv8 32))))} assume ~bvsgt32(~leader_len~0, 0bv32); {2817#(bvsle (_ bv0 32) (bvadd main_~leader_len~0 (_ bv8 32)))} is VALID [2018-11-23 11:33:49,332 INFO L273 TraceCheckUtils]: 7: Hoare triple {2827#(or (not (bvsgt main_~leader_len~0 (_ bv0 32))) (bvsle (_ bv0 32) (bvadd main_~leader_len~0 (_ bv8 32))))} assume !!~bvslt32(~ielen~0, 1000000bv32); {2827#(or (not (bvsgt main_~leader_len~0 (_ bv0 32))) (bvsle (_ bv0 32) (bvadd main_~leader_len~0 (_ bv8 32))))} is VALID [2018-11-23 11:33:49,333 INFO L273 TraceCheckUtils]: 6: Hoare triple {2827#(or (not (bvsgt main_~leader_len~0 (_ bv0 32))) (bvsle (_ bv0 32) (bvadd main_~leader_len~0 (_ bv8 32))))} assume !!~bvslt32(~bufsize~0, 1000000bv32); {2827#(or (not (bvsgt main_~leader_len~0 (_ bv0 32))) (bvsle (_ bv0 32) (bvadd main_~leader_len~0 (_ bv8 32))))} is VALID [2018-11-23 11:33:49,335 INFO L273 TraceCheckUtils]: 5: Hoare triple {2415#true} assume !!~bvslt32(~leader_len~0, 1000000bv32); {2827#(or (not (bvsgt main_~leader_len~0 (_ bv0 32))) (bvsle (_ bv0 32) (bvadd main_~leader_len~0 (_ bv8 32))))} is VALID [2018-11-23 11:33:49,335 INFO L273 TraceCheckUtils]: 4: Hoare triple {2415#true} havoc ~p~0;havoc ~i~0;havoc ~leader_len~0;havoc ~bufsize~0;havoc ~bufsize_0~0;havoc ~ielen~0;~leader_len~0 := #t~nondet1;havoc #t~nondet1;~bufsize~0 := #t~nondet2;havoc #t~nondet2;~ielen~0 := #t~nondet3;havoc #t~nondet3; {2415#true} is VALID [2018-11-23 11:33:49,335 INFO L256 TraceCheckUtils]: 3: Hoare triple {2415#true} call #t~ret5 := main(); {2415#true} is VALID [2018-11-23 11:33:49,336 INFO L268 TraceCheckUtils]: 2: Hoare quadruple {2415#true} {2415#true} #74#return; {2415#true} is VALID [2018-11-23 11:33:49,336 INFO L273 TraceCheckUtils]: 1: Hoare triple {2415#true} assume true; {2415#true} is VALID [2018-11-23 11:33:49,336 INFO L256 TraceCheckUtils]: 0: Hoare triple {2415#true} call ULTIMATE.init(); {2415#true} is VALID [2018-11-23 11:33:49,341 INFO L134 CoverageAnalysis]: Checked inductivity of 166 backedges. 16 proven. 38 refuted. 0 times theorem prover too weak. 112 trivial. 0 not checked. [2018-11-23 11:33:49,342 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 11:33:49,342 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 11] total 20 [2018-11-23 11:33:49,343 INFO L78 Accepts]: Start accepts. Automaton has 20 states. Word has length 70 [2018-11-23 11:33:49,343 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 11:33:49,343 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 20 states. [2018-11-23 11:33:49,542 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 89 edges. 89 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 11:33:49,542 INFO L459 AbstractCegarLoop]: Interpolant automaton has 20 states [2018-11-23 11:33:49,542 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 20 interpolants. [2018-11-23 11:33:49,542 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=69, Invalid=311, Unknown=0, NotChecked=0, Total=380 [2018-11-23 11:33:49,543 INFO L87 Difference]: Start difference. First operand 81 states and 90 transitions. Second operand 20 states. [2018-11-23 11:33:53,439 WARN L180 SmtUtils]: Spent 115.00 ms on a formula simplification. DAG size of input: 14 DAG size of output: 11 [2018-11-23 11:33:54,118 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 11:33:54,119 INFO L93 Difference]: Finished difference Result 103 states and 117 transitions. [2018-11-23 11:33:54,119 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2018-11-23 11:33:54,119 INFO L78 Accepts]: Start accepts. Automaton has 20 states. Word has length 70 [2018-11-23 11:33:54,119 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 11:33:54,120 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 20 states. [2018-11-23 11:33:54,123 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 99 transitions. [2018-11-23 11:33:54,124 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 20 states. [2018-11-23 11:33:54,127 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 99 transitions. [2018-11-23 11:33:54,127 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 17 states and 99 transitions. [2018-11-23 11:33:54,351 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 99 edges. 99 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 11:33:54,354 INFO L225 Difference]: With dead ends: 103 [2018-11-23 11:33:54,354 INFO L226 Difference]: Without dead ends: 101 [2018-11-23 11:33:54,355 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 150 GetRequests, 121 SyntacticMatches, 0 SemanticMatches, 29 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 98 ImplicationChecksByTransitivity, 1.0s TimeCoverageRelationStatistics Valid=215, Invalid=715, Unknown=0, NotChecked=0, Total=930 [2018-11-23 11:33:54,355 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 101 states. [2018-11-23 11:33:54,598 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 101 to 99. [2018-11-23 11:33:54,598 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-23 11:33:54,598 INFO L82 GeneralOperation]: Start isEquivalent. First operand 101 states. Second operand 99 states. [2018-11-23 11:33:54,598 INFO L74 IsIncluded]: Start isIncluded. First operand 101 states. Second operand 99 states. [2018-11-23 11:33:54,598 INFO L87 Difference]: Start difference. First operand 101 states. Second operand 99 states. [2018-11-23 11:33:54,603 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 11:33:54,603 INFO L93 Difference]: Finished difference Result 101 states and 115 transitions. [2018-11-23 11:33:54,603 INFO L276 IsEmpty]: Start isEmpty. Operand 101 states and 115 transitions. [2018-11-23 11:33:54,604 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 11:33:54,604 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 11:33:54,604 INFO L74 IsIncluded]: Start isIncluded. First operand 99 states. Second operand 101 states. [2018-11-23 11:33:54,604 INFO L87 Difference]: Start difference. First operand 99 states. Second operand 101 states. [2018-11-23 11:33:54,609 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 11:33:54,609 INFO L93 Difference]: Finished difference Result 101 states and 115 transitions. [2018-11-23 11:33:54,609 INFO L276 IsEmpty]: Start isEmpty. Operand 101 states and 115 transitions. [2018-11-23 11:33:54,610 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-23 11:33:54,610 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-23 11:33:54,610 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-23 11:33:54,610 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-23 11:33:54,611 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 99 states. [2018-11-23 11:33:54,615 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 99 states to 99 states and 112 transitions. [2018-11-23 11:33:54,615 INFO L78 Accepts]: Start accepts. Automaton has 99 states and 112 transitions. Word has length 70 [2018-11-23 11:33:54,615 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 11:33:54,615 INFO L480 AbstractCegarLoop]: Abstraction has 99 states and 112 transitions. [2018-11-23 11:33:54,615 INFO L481 AbstractCegarLoop]: Interpolant automaton has 20 states. [2018-11-23 11:33:54,615 INFO L276 IsEmpty]: Start isEmpty. Operand 99 states and 112 transitions. [2018-11-23 11:33:54,617 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 115 [2018-11-23 11:33:54,617 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 11:33:54,617 INFO L402 BasicCegarLoop]: trace histogram [16, 15, 15, 8, 8, 8, 8, 7, 7, 7, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 11:33:54,617 INFO L423 AbstractCegarLoop]: === Iteration 7 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-23 11:33:54,618 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 11:33:54,618 INFO L82 PathProgramCache]: Analyzing trace with hash -156209899, now seen corresponding path program 5 times [2018-11-23 11:33:54,618 INFO L223 ckRefinementStrategy]: Switched to mode CVC4_FPBP [2018-11-23 11:33:54,618 INFO L69 tionRefinementEngine]: Using refinement strategy WolfRefinementStrategy No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4nyu Starting monitored process 8 with cvc4nyu --tear-down-incremental --print-success --lang smt --rewrite-divk (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 8 with cvc4nyu --tear-down-incremental --print-success --lang smt --rewrite-divk [2018-11-23 11:33:54,641 INFO L101 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2018-11-23 11:33:55,253 INFO L249 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 13 check-sat command(s) [2018-11-23 11:33:55,253 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 11:33:55,485 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 11:33:55,490 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 11:33:56,923 WARN L180 SmtUtils]: Spent 171.00 ms on a formula simplification. DAG size of input: 27 DAG size of output: 26 [2018-11-23 11:33:57,700 WARN L180 SmtUtils]: Spent 158.00 ms on a formula simplification. DAG size of input: 27 DAG size of output: 24 [2018-11-23 11:33:58,619 WARN L180 SmtUtils]: Spent 132.00 ms on a formula simplification. DAG size of input: 29 DAG size of output: 26 [2018-11-23 11:33:59,569 WARN L180 SmtUtils]: Spent 136.00 ms on a formula simplification. DAG size of input: 28 DAG size of output: 25 [2018-11-23 11:34:00,622 WARN L180 SmtUtils]: Spent 161.00 ms on a formula simplification. DAG size of input: 29 DAG size of output: 26 [2018-11-23 11:34:01,803 WARN L180 SmtUtils]: Spent 136.00 ms on a formula simplification. DAG size of input: 28 DAG size of output: 25 [2018-11-23 11:34:03,326 WARN L180 SmtUtils]: Spent 122.00 ms on a formula simplification. DAG size of input: 26 DAG size of output: 23 [2018-11-23 11:34:03,970 INFO L256 TraceCheckUtils]: 0: Hoare triple {3369#true} call ULTIMATE.init(); {3369#true} is VALID [2018-11-23 11:34:03,971 INFO L273 TraceCheckUtils]: 1: Hoare triple {3369#true} assume true; {3369#true} is VALID [2018-11-23 11:34:03,971 INFO L268 TraceCheckUtils]: 2: Hoare quadruple {3369#true} {3369#true} #74#return; {3369#true} is VALID [2018-11-23 11:34:03,971 INFO L256 TraceCheckUtils]: 3: Hoare triple {3369#true} call #t~ret5 := main(); {3369#true} is VALID [2018-11-23 11:34:03,971 INFO L273 TraceCheckUtils]: 4: Hoare triple {3369#true} havoc ~p~0;havoc ~i~0;havoc ~leader_len~0;havoc ~bufsize~0;havoc ~bufsize_0~0;havoc ~ielen~0;~leader_len~0 := #t~nondet1;havoc #t~nondet1;~bufsize~0 := #t~nondet2;havoc #t~nondet2;~ielen~0 := #t~nondet3;havoc #t~nondet3; {3369#true} is VALID [2018-11-23 11:34:03,972 INFO L273 TraceCheckUtils]: 5: Hoare triple {3369#true} assume !!~bvslt32(~leader_len~0, 1000000bv32); {3389#(bvslt main_~leader_len~0 (_ bv1000000 32))} is VALID [2018-11-23 11:34:03,973 INFO L273 TraceCheckUtils]: 6: Hoare triple {3389#(bvslt main_~leader_len~0 (_ bv1000000 32))} assume !!~bvslt32(~bufsize~0, 1000000bv32); {3393#(and (bvslt main_~bufsize~0 (_ bv1000000 32)) (bvslt main_~leader_len~0 (_ bv1000000 32)))} is VALID [2018-11-23 11:34:03,973 INFO L273 TraceCheckUtils]: 7: Hoare triple {3393#(and (bvslt main_~bufsize~0 (_ bv1000000 32)) (bvslt main_~leader_len~0 (_ bv1000000 32)))} assume !!~bvslt32(~ielen~0, 1000000bv32); {3397#(and (bvslt main_~bufsize~0 (_ bv1000000 32)) (bvslt main_~leader_len~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)))} is VALID [2018-11-23 11:34:03,974 INFO L273 TraceCheckUtils]: 8: Hoare triple {3397#(and (bvslt main_~bufsize~0 (_ bv1000000 32)) (bvslt main_~leader_len~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)))} assume ~bvsgt32(~leader_len~0, 0bv32); {3401#(and (bvslt main_~bufsize~0 (_ bv1000000 32)) (bvslt main_~leader_len~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~leader_len~0 (_ bv0 32)))} is VALID [2018-11-23 11:34:03,974 INFO L273 TraceCheckUtils]: 9: Hoare triple {3401#(and (bvslt main_~bufsize~0 (_ bv1000000 32)) (bvslt main_~leader_len~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~leader_len~0 (_ bv0 32)))} assume ~bvsgt32(~bufsize~0, 0bv32); {3405#(and (bvsgt main_~bufsize~0 (_ bv0 32)) (bvslt main_~bufsize~0 (_ bv1000000 32)) (bvslt main_~leader_len~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~leader_len~0 (_ bv0 32)))} is VALID [2018-11-23 11:34:03,975 INFO L273 TraceCheckUtils]: 10: Hoare triple {3405#(and (bvsgt main_~bufsize~0 (_ bv0 32)) (bvslt main_~bufsize~0 (_ bv1000000 32)) (bvslt main_~leader_len~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~leader_len~0 (_ bv0 32)))} assume ~bvsgt32(~ielen~0, 0bv32); {3409#(and (bvsgt main_~bufsize~0 (_ bv0 32)) (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt main_~bufsize~0 (_ bv1000000 32)) (bvslt main_~leader_len~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~leader_len~0 (_ bv0 32)))} is VALID [2018-11-23 11:34:03,978 INFO L273 TraceCheckUtils]: 11: Hoare triple {3409#(and (bvsgt main_~bufsize~0 (_ bv0 32)) (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt main_~bufsize~0 (_ bv1000000 32)) (bvslt main_~leader_len~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~leader_len~0 (_ bv0 32)))} assume !~bvslt32(~bufsize~0, ~leader_len~0);~p~0 := 0bv32;~bufsize_0~0 := ~bufsize~0;~bufsize~0 := ~bvsub32(~bufsize~0, ~leader_len~0);~p~0 := ~bvadd32(~p~0, ~leader_len~0); {3413#(and (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvslt main_~p~0 (_ bv1000000 32)) (bvsgt main_~p~0 (_ bv0 32)) (= main_~bufsize~0 (bvadd (bvneg main_~p~0) main_~bufsize_0~0)))} is VALID [2018-11-23 11:34:03,979 INFO L273 TraceCheckUtils]: 12: Hoare triple {3413#(and (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvslt main_~p~0 (_ bv1000000 32)) (bvsgt main_~p~0 (_ bv0 32)) (= main_~bufsize~0 (bvadd (bvneg main_~p~0) main_~bufsize_0~0)))} assume !~bvslt32(~bufsize~0, ~bvmul32(2bv32, ~ielen~0));~i~0 := 0bv32; {3417#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt main_~bufsize~0 (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (= main_~i~0 (_ bv0 32)) (bvsgt main_~p~0 (_ bv0 32)) (= main_~bufsize~0 (bvadd (bvneg main_~p~0) main_~bufsize_0~0)))} is VALID [2018-11-23 11:34:03,980 INFO L273 TraceCheckUtils]: 13: Hoare triple {3417#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt main_~bufsize~0 (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (= main_~i~0 (_ bv0 32)) (bvsgt main_~p~0 (_ bv0 32)) (= main_~bufsize~0 (bvadd (bvneg main_~p~0) main_~bufsize_0~0)))} assume !!(~bvslt32(~i~0, ~ielen~0) && ~bvsgt32(~bufsize~0, 2bv32)); {3417#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt main_~bufsize~0 (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (= main_~i~0 (_ bv0 32)) (bvsgt main_~p~0 (_ bv0 32)) (= main_~bufsize~0 (bvadd (bvneg main_~p~0) main_~bufsize_0~0)))} is VALID [2018-11-23 11:34:03,980 INFO L256 TraceCheckUtils]: 14: Hoare triple {3417#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt main_~bufsize~0 (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (= main_~i~0 (_ bv0 32)) (bvsgt main_~p~0 (_ bv0 32)) (= main_~bufsize~0 (bvadd (bvneg main_~p~0) main_~bufsize_0~0)))} call __VERIFIER_assert((if ~bvsle32(0bv32, ~p~0) then 1bv32 else 0bv32)); {3369#true} is VALID [2018-11-23 11:34:03,981 INFO L273 TraceCheckUtils]: 15: Hoare triple {3369#true} ~cond := #in~cond; {3369#true} is VALID [2018-11-23 11:34:03,981 INFO L273 TraceCheckUtils]: 16: Hoare triple {3369#true} assume !(0bv32 == ~cond); {3369#true} is VALID [2018-11-23 11:34:03,981 INFO L273 TraceCheckUtils]: 17: Hoare triple {3369#true} assume true; {3369#true} is VALID [2018-11-23 11:34:03,982 INFO L268 TraceCheckUtils]: 18: Hoare quadruple {3369#true} {3417#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt main_~bufsize~0 (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (= main_~i~0 (_ bv0 32)) (bvsgt main_~p~0 (_ bv0 32)) (= main_~bufsize~0 (bvadd (bvneg main_~p~0) main_~bufsize_0~0)))} #78#return; {3417#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt main_~bufsize~0 (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (= main_~i~0 (_ bv0 32)) (bvsgt main_~p~0 (_ bv0 32)) (= main_~bufsize~0 (bvadd (bvneg main_~p~0) main_~bufsize_0~0)))} is VALID [2018-11-23 11:34:03,982 INFO L256 TraceCheckUtils]: 19: Hoare triple {3417#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt main_~bufsize~0 (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (= main_~i~0 (_ bv0 32)) (bvsgt main_~p~0 (_ bv0 32)) (= main_~bufsize~0 (bvadd (bvneg main_~p~0) main_~bufsize_0~0)))} call __VERIFIER_assert((if ~bvslt32(~bvadd32(1bv32, ~p~0), ~bufsize_0~0) then 1bv32 else 0bv32)); {3369#true} is VALID [2018-11-23 11:34:03,982 INFO L273 TraceCheckUtils]: 20: Hoare triple {3369#true} ~cond := #in~cond; {3442#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2018-11-23 11:34:03,983 INFO L273 TraceCheckUtils]: 21: Hoare triple {3442#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0bv32 == ~cond); {3446#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} is VALID [2018-11-23 11:34:03,983 INFO L273 TraceCheckUtils]: 22: Hoare triple {3446#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} assume true; {3446#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} is VALID [2018-11-23 11:34:03,984 INFO L268 TraceCheckUtils]: 23: Hoare quadruple {3446#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} {3417#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt main_~bufsize~0 (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (= main_~i~0 (_ bv0 32)) (bvsgt main_~p~0 (_ bv0 32)) (= main_~bufsize~0 (bvadd (bvneg main_~p~0) main_~bufsize_0~0)))} #80#return; {3417#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt main_~bufsize~0 (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (= main_~i~0 (_ bv0 32)) (bvsgt main_~p~0 (_ bv0 32)) (= main_~bufsize~0 (bvadd (bvneg main_~p~0) main_~bufsize_0~0)))} is VALID [2018-11-23 11:34:04,227 INFO L273 TraceCheckUtils]: 24: Hoare triple {3417#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt main_~bufsize~0 (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (= main_~i~0 (_ bv0 32)) (bvsgt main_~p~0 (_ bv0 32)) (= main_~bufsize~0 (bvadd (bvneg main_~p~0) main_~bufsize_0~0)))} ~p~0 := ~bvadd32(2bv32, ~p~0); {3456#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt main_~bufsize~0 (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv0 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (= main_~bufsize~0 (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967294 32))) main_~bufsize_0~0)) (= main_~i~0 (_ bv0 32)))} is VALID [2018-11-23 11:34:04,228 INFO L273 TraceCheckUtils]: 25: Hoare triple {3456#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt main_~bufsize~0 (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv0 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (= main_~bufsize~0 (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967294 32))) main_~bufsize_0~0)) (= main_~i~0 (_ bv0 32)))} #t~post4 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post4);havoc #t~post4; {3460#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt main_~bufsize~0 (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv0 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (= main_~bufsize~0 (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967294 32))) main_~bufsize_0~0)) (= (bvadd main_~i~0 (_ bv4294967295 32)) (_ bv0 32)))} is VALID [2018-11-23 11:34:04,232 INFO L273 TraceCheckUtils]: 26: Hoare triple {3460#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt main_~bufsize~0 (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv0 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (= main_~bufsize~0 (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967294 32))) main_~bufsize_0~0)) (= (bvadd main_~i~0 (_ bv4294967295 32)) (_ bv0 32)))} assume !!(~bvslt32(~i~0, ~ielen~0) && ~bvsgt32(~bufsize~0, 2bv32)); {3464#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967294 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv0 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvsgt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967294 32))) main_~bufsize_0~0) (_ bv2 32)) (= (bvadd main_~i~0 (_ bv4294967295 32)) (_ bv0 32)))} is VALID [2018-11-23 11:34:04,232 INFO L256 TraceCheckUtils]: 27: Hoare triple {3464#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967294 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv0 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvsgt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967294 32))) main_~bufsize_0~0) (_ bv2 32)) (= (bvadd main_~i~0 (_ bv4294967295 32)) (_ bv0 32)))} call __VERIFIER_assert((if ~bvsle32(0bv32, ~p~0) then 1bv32 else 0bv32)); {3369#true} is VALID [2018-11-23 11:34:04,232 INFO L273 TraceCheckUtils]: 28: Hoare triple {3369#true} ~cond := #in~cond; {3369#true} is VALID [2018-11-23 11:34:04,232 INFO L273 TraceCheckUtils]: 29: Hoare triple {3369#true} assume !(0bv32 == ~cond); {3369#true} is VALID [2018-11-23 11:34:04,232 INFO L273 TraceCheckUtils]: 30: Hoare triple {3369#true} assume true; {3369#true} is VALID [2018-11-23 11:34:04,233 INFO L268 TraceCheckUtils]: 31: Hoare quadruple {3369#true} {3464#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967294 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv0 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvsgt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967294 32))) main_~bufsize_0~0) (_ bv2 32)) (= (bvadd main_~i~0 (_ bv4294967295 32)) (_ bv0 32)))} #78#return; {3464#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967294 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv0 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvsgt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967294 32))) main_~bufsize_0~0) (_ bv2 32)) (= (bvadd main_~i~0 (_ bv4294967295 32)) (_ bv0 32)))} is VALID [2018-11-23 11:34:04,233 INFO L256 TraceCheckUtils]: 32: Hoare triple {3464#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967294 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv0 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvsgt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967294 32))) main_~bufsize_0~0) (_ bv2 32)) (= (bvadd main_~i~0 (_ bv4294967295 32)) (_ bv0 32)))} call __VERIFIER_assert((if ~bvslt32(~bvadd32(1bv32, ~p~0), ~bufsize_0~0) then 1bv32 else 0bv32)); {3369#true} is VALID [2018-11-23 11:34:04,234 INFO L273 TraceCheckUtils]: 33: Hoare triple {3369#true} ~cond := #in~cond; {3442#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2018-11-23 11:34:04,234 INFO L273 TraceCheckUtils]: 34: Hoare triple {3442#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0bv32 == ~cond); {3446#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} is VALID [2018-11-23 11:34:04,234 INFO L273 TraceCheckUtils]: 35: Hoare triple {3446#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} assume true; {3446#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} is VALID [2018-11-23 11:34:04,239 INFO L268 TraceCheckUtils]: 36: Hoare quadruple {3446#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} {3464#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967294 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv0 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvsgt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967294 32))) main_~bufsize_0~0) (_ bv2 32)) (= (bvadd main_~i~0 (_ bv4294967295 32)) (_ bv0 32)))} #80#return; {3495#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967294 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv0 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0) (= (bvadd main_~i~0 (_ bv4294967295 32)) (_ bv0 32)))} is VALID [2018-11-23 11:34:05,395 INFO L273 TraceCheckUtils]: 37: Hoare triple {3495#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967294 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967294 32)) (_ bv0 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0) (= (bvadd main_~i~0 (_ bv4294967295 32)) (_ bv0 32)))} ~p~0 := ~bvadd32(2bv32, ~p~0); {3499#(and (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967292 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967295 32)) main_~bufsize_0~0) (bvsgt (bvadd main_~p~0 (_ bv4294967292 32)) (_ bv0 32)) (= (bvadd main_~i~0 (_ bv4294967295 32)) (_ bv0 32)))} is VALID [2018-11-23 11:34:05,396 INFO L273 TraceCheckUtils]: 38: Hoare triple {3499#(and (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967292 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967295 32)) main_~bufsize_0~0) (bvsgt (bvadd main_~p~0 (_ bv4294967292 32)) (_ bv0 32)) (= (bvadd main_~i~0 (_ bv4294967295 32)) (_ bv0 32)))} #t~post4 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post4);havoc #t~post4; {3503#(and (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967292 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967295 32)) main_~bufsize_0~0) (bvsgt (bvadd main_~p~0 (_ bv4294967292 32)) (_ bv0 32)) (= (_ bv2 32) main_~i~0))} is VALID [2018-11-23 11:34:05,397 INFO L273 TraceCheckUtils]: 39: Hoare triple {3503#(and (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967292 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967295 32)) main_~bufsize_0~0) (bvsgt (bvadd main_~p~0 (_ bv4294967292 32)) (_ bv0 32)) (= (_ bv2 32) main_~i~0))} assume !!(~bvslt32(~i~0, ~ielen~0) && ~bvsgt32(~bufsize~0, 2bv32)); {3503#(and (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967292 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967295 32)) main_~bufsize_0~0) (bvsgt (bvadd main_~p~0 (_ bv4294967292 32)) (_ bv0 32)) (= (_ bv2 32) main_~i~0))} is VALID [2018-11-23 11:34:05,397 INFO L256 TraceCheckUtils]: 40: Hoare triple {3503#(and (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967292 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967295 32)) main_~bufsize_0~0) (bvsgt (bvadd main_~p~0 (_ bv4294967292 32)) (_ bv0 32)) (= (_ bv2 32) main_~i~0))} call __VERIFIER_assert((if ~bvsle32(0bv32, ~p~0) then 1bv32 else 0bv32)); {3369#true} is VALID [2018-11-23 11:34:05,397 INFO L273 TraceCheckUtils]: 41: Hoare triple {3369#true} ~cond := #in~cond; {3369#true} is VALID [2018-11-23 11:34:05,397 INFO L273 TraceCheckUtils]: 42: Hoare triple {3369#true} assume !(0bv32 == ~cond); {3369#true} is VALID [2018-11-23 11:34:05,397 INFO L273 TraceCheckUtils]: 43: Hoare triple {3369#true} assume true; {3369#true} is VALID [2018-11-23 11:34:05,398 INFO L268 TraceCheckUtils]: 44: Hoare quadruple {3369#true} {3503#(and (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967292 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967295 32)) main_~bufsize_0~0) (bvsgt (bvadd main_~p~0 (_ bv4294967292 32)) (_ bv0 32)) (= (_ bv2 32) main_~i~0))} #78#return; {3503#(and (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967292 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967295 32)) main_~bufsize_0~0) (bvsgt (bvadd main_~p~0 (_ bv4294967292 32)) (_ bv0 32)) (= (_ bv2 32) main_~i~0))} is VALID [2018-11-23 11:34:05,398 INFO L256 TraceCheckUtils]: 45: Hoare triple {3503#(and (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967292 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967295 32)) main_~bufsize_0~0) (bvsgt (bvadd main_~p~0 (_ bv4294967292 32)) (_ bv0 32)) (= (_ bv2 32) main_~i~0))} call __VERIFIER_assert((if ~bvslt32(~bvadd32(1bv32, ~p~0), ~bufsize_0~0) then 1bv32 else 0bv32)); {3369#true} is VALID [2018-11-23 11:34:05,399 INFO L273 TraceCheckUtils]: 46: Hoare triple {3369#true} ~cond := #in~cond; {3442#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2018-11-23 11:34:05,399 INFO L273 TraceCheckUtils]: 47: Hoare triple {3442#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0bv32 == ~cond); {3446#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} is VALID [2018-11-23 11:34:05,399 INFO L273 TraceCheckUtils]: 48: Hoare triple {3446#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} assume true; {3446#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} is VALID [2018-11-23 11:34:05,405 INFO L268 TraceCheckUtils]: 49: Hoare quadruple {3446#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} {3503#(and (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967292 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967295 32)) main_~bufsize_0~0) (bvsgt (bvadd main_~p~0 (_ bv4294967292 32)) (_ bv0 32)) (= (_ bv2 32) main_~i~0))} #80#return; {3537#(and (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967292 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0) (bvsgt (bvadd main_~p~0 (_ bv4294967292 32)) (_ bv0 32)) (= (_ bv2 32) main_~i~0))} is VALID [2018-11-23 11:34:06,664 INFO L273 TraceCheckUtils]: 50: Hoare triple {3537#(and (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967292 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0) (bvsgt (bvadd main_~p~0 (_ bv4294967292 32)) (_ bv0 32)) (= (_ bv2 32) main_~i~0))} ~p~0 := ~bvadd32(2bv32, ~p~0); {3541#(and (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967295 32)) main_~bufsize_0~0) (bvsgt (bvadd main_~p~0 (_ bv4294967290 32)) (_ bv0 32)) (= (_ bv2 32) main_~i~0) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967290 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))))} is VALID [2018-11-23 11:34:06,665 INFO L273 TraceCheckUtils]: 51: Hoare triple {3541#(and (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967295 32)) main_~bufsize_0~0) (bvsgt (bvadd main_~p~0 (_ bv4294967290 32)) (_ bv0 32)) (= (_ bv2 32) main_~i~0) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967290 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))))} #t~post4 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post4);havoc #t~post4; {3545#(and (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (= (bvadd main_~i~0 (_ bv4294967293 32)) (_ bv0 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967295 32)) main_~bufsize_0~0) (bvsgt (bvadd main_~p~0 (_ bv4294967290 32)) (_ bv0 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967290 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))))} is VALID [2018-11-23 11:34:06,666 INFO L273 TraceCheckUtils]: 52: Hoare triple {3545#(and (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (= (bvadd main_~i~0 (_ bv4294967293 32)) (_ bv0 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967295 32)) main_~bufsize_0~0) (bvsgt (bvadd main_~p~0 (_ bv4294967290 32)) (_ bv0 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967290 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))))} assume !!(~bvslt32(~i~0, ~ielen~0) && ~bvsgt32(~bufsize~0, 2bv32)); {3545#(and (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (= (bvadd main_~i~0 (_ bv4294967293 32)) (_ bv0 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967295 32)) main_~bufsize_0~0) (bvsgt (bvadd main_~p~0 (_ bv4294967290 32)) (_ bv0 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967290 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))))} is VALID [2018-11-23 11:34:06,666 INFO L256 TraceCheckUtils]: 53: Hoare triple {3545#(and (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (= (bvadd main_~i~0 (_ bv4294967293 32)) (_ bv0 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967295 32)) main_~bufsize_0~0) (bvsgt (bvadd main_~p~0 (_ bv4294967290 32)) (_ bv0 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967290 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))))} call __VERIFIER_assert((if ~bvsle32(0bv32, ~p~0) then 1bv32 else 0bv32)); {3369#true} is VALID [2018-11-23 11:34:06,666 INFO L273 TraceCheckUtils]: 54: Hoare triple {3369#true} ~cond := #in~cond; {3369#true} is VALID [2018-11-23 11:34:06,666 INFO L273 TraceCheckUtils]: 55: Hoare triple {3369#true} assume !(0bv32 == ~cond); {3369#true} is VALID [2018-11-23 11:34:06,666 INFO L273 TraceCheckUtils]: 56: Hoare triple {3369#true} assume true; {3369#true} is VALID [2018-11-23 11:34:06,667 INFO L268 TraceCheckUtils]: 57: Hoare quadruple {3369#true} {3545#(and (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (= (bvadd main_~i~0 (_ bv4294967293 32)) (_ bv0 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967295 32)) main_~bufsize_0~0) (bvsgt (bvadd main_~p~0 (_ bv4294967290 32)) (_ bv0 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967290 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))))} #78#return; {3545#(and (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (= (bvadd main_~i~0 (_ bv4294967293 32)) (_ bv0 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967295 32)) main_~bufsize_0~0) (bvsgt (bvadd main_~p~0 (_ bv4294967290 32)) (_ bv0 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967290 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))))} is VALID [2018-11-23 11:34:06,668 INFO L256 TraceCheckUtils]: 58: Hoare triple {3545#(and (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (= (bvadd main_~i~0 (_ bv4294967293 32)) (_ bv0 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967295 32)) main_~bufsize_0~0) (bvsgt (bvadd main_~p~0 (_ bv4294967290 32)) (_ bv0 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967290 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))))} call __VERIFIER_assert((if ~bvslt32(~bvadd32(1bv32, ~p~0), ~bufsize_0~0) then 1bv32 else 0bv32)); {3369#true} is VALID [2018-11-23 11:34:06,668 INFO L273 TraceCheckUtils]: 59: Hoare triple {3369#true} ~cond := #in~cond; {3442#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2018-11-23 11:34:06,669 INFO L273 TraceCheckUtils]: 60: Hoare triple {3442#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0bv32 == ~cond); {3446#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} is VALID [2018-11-23 11:34:06,669 INFO L273 TraceCheckUtils]: 61: Hoare triple {3446#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} assume true; {3446#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} is VALID [2018-11-23 11:34:06,676 INFO L268 TraceCheckUtils]: 62: Hoare quadruple {3446#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} {3545#(and (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (= (bvadd main_~i~0 (_ bv4294967293 32)) (_ bv0 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967295 32)) main_~bufsize_0~0) (bvsgt (bvadd main_~p~0 (_ bv4294967290 32)) (_ bv0 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967290 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))))} #80#return; {3579#(and (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (= (bvadd main_~i~0 (_ bv4294967293 32)) (_ bv0 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0) (bvsgt (bvadd main_~p~0 (_ bv4294967290 32)) (_ bv0 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967290 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))))} is VALID [2018-11-23 11:34:07,967 INFO L273 TraceCheckUtils]: 63: Hoare triple {3579#(and (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (= (bvadd main_~i~0 (_ bv4294967293 32)) (_ bv0 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0) (bvsgt (bvadd main_~p~0 (_ bv4294967290 32)) (_ bv0 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967290 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))))} ~p~0 := ~bvadd32(2bv32, ~p~0); {3583#(and (bvsgt main_~ielen~0 (_ bv0 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967288 32)) (_ bv0 32)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (= (bvadd main_~i~0 (_ bv4294967293 32)) (_ bv0 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967295 32)) main_~bufsize_0~0) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967288 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))))} is VALID [2018-11-23 11:34:07,968 INFO L273 TraceCheckUtils]: 64: Hoare triple {3583#(and (bvsgt main_~ielen~0 (_ bv0 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967288 32)) (_ bv0 32)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (= (bvadd main_~i~0 (_ bv4294967293 32)) (_ bv0 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967295 32)) main_~bufsize_0~0) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967288 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))))} #t~post4 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post4);havoc #t~post4; {3587#(and (bvsgt main_~ielen~0 (_ bv0 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967288 32)) (_ bv0 32)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (= (_ bv4 32) main_~i~0) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967295 32)) main_~bufsize_0~0) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967288 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))))} is VALID [2018-11-23 11:34:07,969 INFO L273 TraceCheckUtils]: 65: Hoare triple {3587#(and (bvsgt main_~ielen~0 (_ bv0 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967288 32)) (_ bv0 32)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (= (_ bv4 32) main_~i~0) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967295 32)) main_~bufsize_0~0) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967288 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))))} assume !!(~bvslt32(~i~0, ~ielen~0) && ~bvsgt32(~bufsize~0, 2bv32)); {3587#(and (bvsgt main_~ielen~0 (_ bv0 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967288 32)) (_ bv0 32)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (= (_ bv4 32) main_~i~0) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967295 32)) main_~bufsize_0~0) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967288 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))))} is VALID [2018-11-23 11:34:07,969 INFO L256 TraceCheckUtils]: 66: Hoare triple {3587#(and (bvsgt main_~ielen~0 (_ bv0 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967288 32)) (_ bv0 32)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (= (_ bv4 32) main_~i~0) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967295 32)) main_~bufsize_0~0) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967288 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))))} call __VERIFIER_assert((if ~bvsle32(0bv32, ~p~0) then 1bv32 else 0bv32)); {3369#true} is VALID [2018-11-23 11:34:07,969 INFO L273 TraceCheckUtils]: 67: Hoare triple {3369#true} ~cond := #in~cond; {3369#true} is VALID [2018-11-23 11:34:07,970 INFO L273 TraceCheckUtils]: 68: Hoare triple {3369#true} assume !(0bv32 == ~cond); {3369#true} is VALID [2018-11-23 11:34:07,970 INFO L273 TraceCheckUtils]: 69: Hoare triple {3369#true} assume true; {3369#true} is VALID [2018-11-23 11:34:07,970 INFO L268 TraceCheckUtils]: 70: Hoare quadruple {3369#true} {3587#(and (bvsgt main_~ielen~0 (_ bv0 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967288 32)) (_ bv0 32)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (= (_ bv4 32) main_~i~0) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967295 32)) main_~bufsize_0~0) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967288 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))))} #78#return; {3587#(and (bvsgt main_~ielen~0 (_ bv0 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967288 32)) (_ bv0 32)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (= (_ bv4 32) main_~i~0) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967295 32)) main_~bufsize_0~0) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967288 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))))} is VALID [2018-11-23 11:34:07,971 INFO L256 TraceCheckUtils]: 71: Hoare triple {3587#(and (bvsgt main_~ielen~0 (_ bv0 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967288 32)) (_ bv0 32)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (= (_ bv4 32) main_~i~0) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967295 32)) main_~bufsize_0~0) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967288 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))))} call __VERIFIER_assert((if ~bvslt32(~bvadd32(1bv32, ~p~0), ~bufsize_0~0) then 1bv32 else 0bv32)); {3369#true} is VALID [2018-11-23 11:34:07,972 INFO L273 TraceCheckUtils]: 72: Hoare triple {3369#true} ~cond := #in~cond; {3442#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2018-11-23 11:34:07,981 INFO L273 TraceCheckUtils]: 73: Hoare triple {3442#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0bv32 == ~cond); {3446#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} is VALID [2018-11-23 11:34:07,989 INFO L273 TraceCheckUtils]: 74: Hoare triple {3446#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} assume true; {3446#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} is VALID [2018-11-23 11:34:07,994 INFO L268 TraceCheckUtils]: 75: Hoare quadruple {3446#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} {3587#(and (bvsgt main_~ielen~0 (_ bv0 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967288 32)) (_ bv0 32)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (= (_ bv4 32) main_~i~0) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967295 32)) main_~bufsize_0~0) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967288 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))))} #80#return; {3621#(and (bvsgt main_~ielen~0 (_ bv0 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967288 32)) (_ bv0 32)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (= (_ bv4 32) main_~i~0) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967288 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))))} is VALID [2018-11-23 11:34:09,117 INFO L273 TraceCheckUtils]: 76: Hoare triple {3621#(and (bvsgt main_~ielen~0 (_ bv0 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967288 32)) (_ bv0 32)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (= (_ bv4 32) main_~i~0) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967288 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))))} ~p~0 := ~bvadd32(2bv32, ~p~0); {3625#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967286 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967286 32)) (_ bv0 32)) (= (_ bv4 32) main_~i~0) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967295 32)) main_~bufsize_0~0))} is VALID [2018-11-23 11:34:09,119 INFO L273 TraceCheckUtils]: 77: Hoare triple {3625#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967286 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967286 32)) (_ bv0 32)) (= (_ bv4 32) main_~i~0) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967295 32)) main_~bufsize_0~0))} #t~post4 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post4);havoc #t~post4; {3629#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967286 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967286 32)) (_ bv0 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967295 32)) main_~bufsize_0~0) (= (bvadd main_~i~0 (_ bv4294967291 32)) (_ bv0 32)))} is VALID [2018-11-23 11:34:09,119 INFO L273 TraceCheckUtils]: 78: Hoare triple {3629#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967286 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967286 32)) (_ bv0 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967295 32)) main_~bufsize_0~0) (= (bvadd main_~i~0 (_ bv4294967291 32)) (_ bv0 32)))} assume !!(~bvslt32(~i~0, ~ielen~0) && ~bvsgt32(~bufsize~0, 2bv32)); {3629#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967286 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967286 32)) (_ bv0 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967295 32)) main_~bufsize_0~0) (= (bvadd main_~i~0 (_ bv4294967291 32)) (_ bv0 32)))} is VALID [2018-11-23 11:34:09,119 INFO L256 TraceCheckUtils]: 79: Hoare triple {3629#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967286 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967286 32)) (_ bv0 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967295 32)) main_~bufsize_0~0) (= (bvadd main_~i~0 (_ bv4294967291 32)) (_ bv0 32)))} call __VERIFIER_assert((if ~bvsle32(0bv32, ~p~0) then 1bv32 else 0bv32)); {3369#true} is VALID [2018-11-23 11:34:09,120 INFO L273 TraceCheckUtils]: 80: Hoare triple {3369#true} ~cond := #in~cond; {3369#true} is VALID [2018-11-23 11:34:09,120 INFO L273 TraceCheckUtils]: 81: Hoare triple {3369#true} assume !(0bv32 == ~cond); {3369#true} is VALID [2018-11-23 11:34:09,120 INFO L273 TraceCheckUtils]: 82: Hoare triple {3369#true} assume true; {3369#true} is VALID [2018-11-23 11:34:09,120 INFO L268 TraceCheckUtils]: 83: Hoare quadruple {3369#true} {3629#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967286 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967286 32)) (_ bv0 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967295 32)) main_~bufsize_0~0) (= (bvadd main_~i~0 (_ bv4294967291 32)) (_ bv0 32)))} #78#return; {3629#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967286 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967286 32)) (_ bv0 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967295 32)) main_~bufsize_0~0) (= (bvadd main_~i~0 (_ bv4294967291 32)) (_ bv0 32)))} is VALID [2018-11-23 11:34:09,121 INFO L256 TraceCheckUtils]: 84: Hoare triple {3629#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967286 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967286 32)) (_ bv0 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967295 32)) main_~bufsize_0~0) (= (bvadd main_~i~0 (_ bv4294967291 32)) (_ bv0 32)))} call __VERIFIER_assert((if ~bvslt32(~bvadd32(1bv32, ~p~0), ~bufsize_0~0) then 1bv32 else 0bv32)); {3369#true} is VALID [2018-11-23 11:34:09,121 INFO L273 TraceCheckUtils]: 85: Hoare triple {3369#true} ~cond := #in~cond; {3442#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2018-11-23 11:34:09,122 INFO L273 TraceCheckUtils]: 86: Hoare triple {3442#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0bv32 == ~cond); {3446#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} is VALID [2018-11-23 11:34:09,122 INFO L273 TraceCheckUtils]: 87: Hoare triple {3446#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} assume true; {3446#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} is VALID [2018-11-23 11:34:09,129 INFO L268 TraceCheckUtils]: 88: Hoare quadruple {3446#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} {3629#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967286 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967286 32)) (_ bv0 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967295 32)) main_~bufsize_0~0) (= (bvadd main_~i~0 (_ bv4294967291 32)) (_ bv0 32)))} #80#return; {3663#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967286 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967286 32)) (_ bv0 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0) (= (bvadd main_~i~0 (_ bv4294967291 32)) (_ bv0 32)))} is VALID [2018-11-23 11:34:10,240 INFO L273 TraceCheckUtils]: 89: Hoare triple {3663#(and (bvsgt main_~ielen~0 (_ bv0 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967286 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967286 32)) (_ bv0 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0) (= (bvadd main_~i~0 (_ bv4294967291 32)) (_ bv0 32)))} ~p~0 := ~bvadd32(2bv32, ~p~0); {3667#(and (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967295 32)) main_~bufsize_0~0) (bvsgt (bvadd main_~p~0 (_ bv4294967284 32)) (_ bv0 32)) (not (bvslt (bvadd main_~bufsize_0~0 (bvneg (bvadd main_~p~0 (_ bv4294967284 32)))) (bvmul (_ bv2 32) main_~ielen~0))) (= (bvadd main_~i~0 (_ bv4294967291 32)) (_ bv0 32)))} is VALID [2018-11-23 11:34:10,244 INFO L273 TraceCheckUtils]: 90: Hoare triple {3667#(and (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967295 32)) main_~bufsize_0~0) (bvsgt (bvadd main_~p~0 (_ bv4294967284 32)) (_ bv0 32)) (not (bvslt (bvadd main_~bufsize_0~0 (bvneg (bvadd main_~p~0 (_ bv4294967284 32)))) (bvmul (_ bv2 32) main_~ielen~0))) (= (bvadd main_~i~0 (_ bv4294967291 32)) (_ bv0 32)))} #t~post4 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post4);havoc #t~post4; {3671#(and (bvsgt main_~ielen~0 (_ bv0 32)) (= (_ bv6 32) main_~i~0) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967295 32)) main_~bufsize_0~0) (bvsgt (bvadd main_~p~0 (_ bv4294967284 32)) (_ bv0 32)) (not (bvslt (bvadd main_~bufsize_0~0 (bvneg (bvadd main_~p~0 (_ bv4294967284 32)))) (bvmul (_ bv2 32) main_~ielen~0))))} is VALID [2018-11-23 11:34:10,245 INFO L273 TraceCheckUtils]: 91: Hoare triple {3671#(and (bvsgt main_~ielen~0 (_ bv0 32)) (= (_ bv6 32) main_~i~0) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967295 32)) main_~bufsize_0~0) (bvsgt (bvadd main_~p~0 (_ bv4294967284 32)) (_ bv0 32)) (not (bvslt (bvadd main_~bufsize_0~0 (bvneg (bvadd main_~p~0 (_ bv4294967284 32)))) (bvmul (_ bv2 32) main_~ielen~0))))} assume !!(~bvslt32(~i~0, ~ielen~0) && ~bvsgt32(~bufsize~0, 2bv32)); {3671#(and (bvsgt main_~ielen~0 (_ bv0 32)) (= (_ bv6 32) main_~i~0) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967295 32)) main_~bufsize_0~0) (bvsgt (bvadd main_~p~0 (_ bv4294967284 32)) (_ bv0 32)) (not (bvslt (bvadd main_~bufsize_0~0 (bvneg (bvadd main_~p~0 (_ bv4294967284 32)))) (bvmul (_ bv2 32) main_~ielen~0))))} is VALID [2018-11-23 11:34:10,245 INFO L256 TraceCheckUtils]: 92: Hoare triple {3671#(and (bvsgt main_~ielen~0 (_ bv0 32)) (= (_ bv6 32) main_~i~0) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967295 32)) main_~bufsize_0~0) (bvsgt (bvadd main_~p~0 (_ bv4294967284 32)) (_ bv0 32)) (not (bvslt (bvadd main_~bufsize_0~0 (bvneg (bvadd main_~p~0 (_ bv4294967284 32)))) (bvmul (_ bv2 32) main_~ielen~0))))} call __VERIFIER_assert((if ~bvsle32(0bv32, ~p~0) then 1bv32 else 0bv32)); {3369#true} is VALID [2018-11-23 11:34:10,246 INFO L273 TraceCheckUtils]: 93: Hoare triple {3369#true} ~cond := #in~cond; {3369#true} is VALID [2018-11-23 11:34:10,246 INFO L273 TraceCheckUtils]: 94: Hoare triple {3369#true} assume !(0bv32 == ~cond); {3369#true} is VALID [2018-11-23 11:34:10,246 INFO L273 TraceCheckUtils]: 95: Hoare triple {3369#true} assume true; {3369#true} is VALID [2018-11-23 11:34:10,246 INFO L268 TraceCheckUtils]: 96: Hoare quadruple {3369#true} {3671#(and (bvsgt main_~ielen~0 (_ bv0 32)) (= (_ bv6 32) main_~i~0) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967295 32)) main_~bufsize_0~0) (bvsgt (bvadd main_~p~0 (_ bv4294967284 32)) (_ bv0 32)) (not (bvslt (bvadd main_~bufsize_0~0 (bvneg (bvadd main_~p~0 (_ bv4294967284 32)))) (bvmul (_ bv2 32) main_~ielen~0))))} #78#return; {3671#(and (bvsgt main_~ielen~0 (_ bv0 32)) (= (_ bv6 32) main_~i~0) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967295 32)) main_~bufsize_0~0) (bvsgt (bvadd main_~p~0 (_ bv4294967284 32)) (_ bv0 32)) (not (bvslt (bvadd main_~bufsize_0~0 (bvneg (bvadd main_~p~0 (_ bv4294967284 32)))) (bvmul (_ bv2 32) main_~ielen~0))))} is VALID [2018-11-23 11:34:10,247 INFO L256 TraceCheckUtils]: 97: Hoare triple {3671#(and (bvsgt main_~ielen~0 (_ bv0 32)) (= (_ bv6 32) main_~i~0) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967295 32)) main_~bufsize_0~0) (bvsgt (bvadd main_~p~0 (_ bv4294967284 32)) (_ bv0 32)) (not (bvslt (bvadd main_~bufsize_0~0 (bvneg (bvadd main_~p~0 (_ bv4294967284 32)))) (bvmul (_ bv2 32) main_~ielen~0))))} call __VERIFIER_assert((if ~bvslt32(~bvadd32(1bv32, ~p~0), ~bufsize_0~0) then 1bv32 else 0bv32)); {3369#true} is VALID [2018-11-23 11:34:10,247 INFO L273 TraceCheckUtils]: 98: Hoare triple {3369#true} ~cond := #in~cond; {3442#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2018-11-23 11:34:10,247 INFO L273 TraceCheckUtils]: 99: Hoare triple {3442#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0bv32 == ~cond); {3446#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} is VALID [2018-11-23 11:34:10,248 INFO L273 TraceCheckUtils]: 100: Hoare triple {3446#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} assume true; {3446#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} is VALID [2018-11-23 11:34:10,253 INFO L268 TraceCheckUtils]: 101: Hoare quadruple {3446#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} {3671#(and (bvsgt main_~ielen~0 (_ bv0 32)) (= (_ bv6 32) main_~i~0) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967295 32)) main_~bufsize_0~0) (bvsgt (bvadd main_~p~0 (_ bv4294967284 32)) (_ bv0 32)) (not (bvslt (bvadd main_~bufsize_0~0 (bvneg (bvadd main_~p~0 (_ bv4294967284 32)))) (bvmul (_ bv2 32) main_~ielen~0))))} #80#return; {3705#(and (bvsgt main_~ielen~0 (_ bv0 32)) (= (_ bv6 32) main_~i~0) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0) (bvsgt (bvadd main_~p~0 (_ bv4294967284 32)) (_ bv0 32)) (not (bvslt (bvadd main_~bufsize_0~0 (bvneg (bvadd main_~p~0 (_ bv4294967284 32)))) (bvmul (_ bv2 32) main_~ielen~0))))} is VALID [2018-11-23 11:34:11,204 INFO L273 TraceCheckUtils]: 102: Hoare triple {3705#(and (bvsgt main_~ielen~0 (_ bv0 32)) (= (_ bv6 32) main_~i~0) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0) (bvsgt (bvadd main_~p~0 (_ bv4294967284 32)) (_ bv0 32)) (not (bvslt (bvadd main_~bufsize_0~0 (bvneg (bvadd main_~p~0 (_ bv4294967284 32)))) (bvmul (_ bv2 32) main_~ielen~0))))} ~p~0 := ~bvadd32(2bv32, ~p~0); {3709#(and (bvsgt main_~ielen~0 (_ bv0 32)) (= (_ bv6 32) main_~i~0) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967282 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967295 32)) main_~bufsize_0~0) (bvsgt (bvadd main_~p~0 (_ bv4294967282 32)) (_ bv0 32)))} is VALID [2018-11-23 11:34:11,205 INFO L273 TraceCheckUtils]: 103: Hoare triple {3709#(and (bvsgt main_~ielen~0 (_ bv0 32)) (= (_ bv6 32) main_~i~0) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967282 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967295 32)) main_~bufsize_0~0) (bvsgt (bvadd main_~p~0 (_ bv4294967282 32)) (_ bv0 32)))} #t~post4 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post4);havoc #t~post4; {3713#(and (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967282 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967295 32)) main_~bufsize_0~0) (bvsgt (bvadd main_~p~0 (_ bv4294967282 32)) (_ bv0 32)) (= (bvadd main_~i~0 (_ bv4294967289 32)) (_ bv0 32)))} is VALID [2018-11-23 11:34:11,210 INFO L273 TraceCheckUtils]: 104: Hoare triple {3713#(and (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967282 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~ielen~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvslt (bvadd main_~p~0 (_ bv4294967295 32)) main_~bufsize_0~0) (bvsgt (bvadd main_~p~0 (_ bv4294967282 32)) (_ bv0 32)) (= (bvadd main_~i~0 (_ bv4294967289 32)) (_ bv0 32)))} assume !!(~bvslt32(~i~0, ~ielen~0) && ~bvsgt32(~bufsize~0, 2bv32)); {3717#(and (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967282 32)) (_ bv0 32)) (exists ((main_~ielen~0 (_ BitVec 32))) (and (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt (_ bv7 32) main_~ielen~0) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967282 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~ielen~0 (_ bv1000000 32)))))} is VALID [2018-11-23 11:34:11,210 INFO L256 TraceCheckUtils]: 105: Hoare triple {3717#(and (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967282 32)) (_ bv0 32)) (exists ((main_~ielen~0 (_ BitVec 32))) (and (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt (_ bv7 32) main_~ielen~0) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967282 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~ielen~0 (_ bv1000000 32)))))} call __VERIFIER_assert((if ~bvsle32(0bv32, ~p~0) then 1bv32 else 0bv32)); {3369#true} is VALID [2018-11-23 11:34:11,211 INFO L273 TraceCheckUtils]: 106: Hoare triple {3369#true} ~cond := #in~cond; {3369#true} is VALID [2018-11-23 11:34:11,211 INFO L273 TraceCheckUtils]: 107: Hoare triple {3369#true} assume !(0bv32 == ~cond); {3369#true} is VALID [2018-11-23 11:34:11,211 INFO L273 TraceCheckUtils]: 108: Hoare triple {3369#true} assume true; {3369#true} is VALID [2018-11-23 11:34:11,212 INFO L268 TraceCheckUtils]: 109: Hoare quadruple {3369#true} {3717#(and (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967282 32)) (_ bv0 32)) (exists ((main_~ielen~0 (_ BitVec 32))) (and (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt (_ bv7 32) main_~ielen~0) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967282 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~ielen~0 (_ bv1000000 32)))))} #78#return; {3717#(and (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967282 32)) (_ bv0 32)) (exists ((main_~ielen~0 (_ BitVec 32))) (and (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt (_ bv7 32) main_~ielen~0) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967282 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~ielen~0 (_ bv1000000 32)))))} is VALID [2018-11-23 11:34:11,263 INFO L256 TraceCheckUtils]: 110: Hoare triple {3717#(and (bvslt main_~bufsize_0~0 (_ bv1000000 32)) (bvsgt main_~bufsize_0~0 (_ bv0 32)) (bvsgt (bvadd main_~p~0 (_ bv4294967282 32)) (_ bv0 32)) (exists ((main_~ielen~0 (_ BitVec 32))) (and (bvsgt main_~ielen~0 (_ bv0 32)) (bvslt (_ bv7 32) main_~ielen~0) (not (bvslt (bvadd (bvneg (bvadd main_~p~0 (_ bv4294967282 32))) main_~bufsize_0~0) (bvmul (_ bv2 32) main_~ielen~0))) (bvslt main_~ielen~0 (_ bv1000000 32)))))} call __VERIFIER_assert((if ~bvslt32(~bvadd32(1bv32, ~p~0), ~bufsize_0~0) then 1bv32 else 0bv32)); {3736#(= (bvadd |__VERIFIER_assert_#in~cond| (_ bv4294967295 32)) (_ bv0 32))} is VALID [2018-11-23 11:34:11,264 INFO L273 TraceCheckUtils]: 111: Hoare triple {3736#(= (bvadd |__VERIFIER_assert_#in~cond| (_ bv4294967295 32)) (_ bv0 32))} ~cond := #in~cond; {3740#(= (bvadd __VERIFIER_assert_~cond (_ bv4294967295 32)) (_ bv0 32))} is VALID [2018-11-23 11:34:11,265 INFO L273 TraceCheckUtils]: 112: Hoare triple {3740#(= (bvadd __VERIFIER_assert_~cond (_ bv4294967295 32)) (_ bv0 32))} assume 0bv32 == ~cond; {3370#false} is VALID [2018-11-23 11:34:11,265 INFO L273 TraceCheckUtils]: 113: Hoare triple {3370#false} assume !false; {3370#false} is VALID [2018-11-23 11:34:11,302 INFO L134 CoverageAnalysis]: Checked inductivity of 576 backedges. 107 proven. 217 refuted. 0 times theorem prover too weak. 252 trivial. 0 not checked. [2018-11-23 11:34:11,303 INFO L316 TraceCheckSpWp]: Computing backward predicates... [2018-11-23 11:34:21,630 WARN L180 SmtUtils]: Spent 161.00 ms on a formula simplification. DAG size of input: 23 DAG size of output: 20 [2018-11-23 11:34:25,524 WARN L180 SmtUtils]: Spent 150.00 ms on a formula simplification. DAG size of input: 24 DAG size of output: 20 [2018-11-23 11:34:29,356 WARN L180 SmtUtils]: Spent 135.00 ms on a formula simplification. DAG size of input: 24 DAG size of output: 20 [2018-11-23 11:34:33,382 WARN L180 SmtUtils]: Spent 129.00 ms on a formula simplification. DAG size of input: 24 DAG size of output: 20 [2018-11-23 11:34:38,419 WARN L180 SmtUtils]: Spent 156.00 ms on a formula simplification. DAG size of input: 28 DAG size of output: 24 [2018-11-23 11:34:41,985 WARN L180 SmtUtils]: Spent 263.00 ms on a formula simplification. DAG size of input: 25 DAG size of output: 23 [2018-11-23 11:34:45,540 WARN L180 SmtUtils]: Spent 132.00 ms on a formula simplification. DAG size of input: 26 DAG size of output: 22 [2018-11-23 11:34:47,015 INFO L273 TraceCheckUtils]: 113: Hoare triple {3370#false} assume !false; {3370#false} is VALID [2018-11-23 11:34:47,016 INFO L273 TraceCheckUtils]: 112: Hoare triple {3750#(not (= (_ bv0 32) __VERIFIER_assert_~cond))} assume 0bv32 == ~cond; {3370#false} is VALID [2018-11-23 11:34:47,017 INFO L273 TraceCheckUtils]: 111: Hoare triple {3446#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} ~cond := #in~cond; {3750#(not (= (_ bv0 32) __VERIFIER_assert_~cond))} is VALID [2018-11-23 11:34:47,017 INFO L256 TraceCheckUtils]: 110: Hoare triple {3757#(bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)} call __VERIFIER_assert((if ~bvslt32(~bvadd32(1bv32, ~p~0), ~bufsize_0~0) then 1bv32 else 0bv32)); {3446#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} is VALID [2018-11-23 11:34:47,018 INFO L268 TraceCheckUtils]: 109: Hoare quadruple {3369#true} {3757#(bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)} #78#return; {3757#(bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)} is VALID [2018-11-23 11:34:47,018 INFO L273 TraceCheckUtils]: 108: Hoare triple {3369#true} assume true; {3369#true} is VALID [2018-11-23 11:34:47,018 INFO L273 TraceCheckUtils]: 107: Hoare triple {3369#true} assume !(0bv32 == ~cond); {3369#true} is VALID [2018-11-23 11:34:47,018 INFO L273 TraceCheckUtils]: 106: Hoare triple {3369#true} ~cond := #in~cond; {3369#true} is VALID [2018-11-23 11:34:47,018 INFO L256 TraceCheckUtils]: 105: Hoare triple {3757#(bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)} call __VERIFIER_assert((if ~bvsle32(0bv32, ~p~0) then 1bv32 else 0bv32)); {3369#true} is VALID [2018-11-23 11:34:47,018 INFO L273 TraceCheckUtils]: 104: Hoare triple {3776#(or (not (bvslt main_~i~0 main_~ielen~0)) (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0))} assume !!(~bvslt32(~i~0, ~ielen~0) && ~bvsgt32(~bufsize~0, 2bv32)); {3757#(bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)} is VALID [2018-11-23 11:34:47,019 INFO L273 TraceCheckUtils]: 103: Hoare triple {3780#(or (not (bvslt (bvadd main_~i~0 (_ bv1 32)) main_~ielen~0)) (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0))} #t~post4 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post4);havoc #t~post4; {3776#(or (not (bvslt main_~i~0 main_~ielen~0)) (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0))} is VALID [2018-11-23 11:34:47,046 INFO L273 TraceCheckUtils]: 102: Hoare triple {3784#(or (not (bvslt (bvadd main_~i~0 (_ bv1 32)) main_~ielen~0)) (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0))} ~p~0 := ~bvadd32(2bv32, ~p~0); {3780#(or (not (bvslt (bvadd main_~i~0 (_ bv1 32)) main_~ielen~0)) (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0))} is VALID [2018-11-23 11:34:47,049 INFO L268 TraceCheckUtils]: 101: Hoare quadruple {3446#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} {3788#(or (not (bvslt (bvadd main_~i~0 (_ bv1 32)) main_~ielen~0)) (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} #80#return; {3784#(or (not (bvslt (bvadd main_~i~0 (_ bv1 32)) main_~ielen~0)) (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0))} is VALID [2018-11-23 11:34:47,049 INFO L273 TraceCheckUtils]: 100: Hoare triple {3446#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} assume true; {3446#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} is VALID [2018-11-23 11:34:47,050 INFO L273 TraceCheckUtils]: 99: Hoare triple {3798#(or (= (_ bv0 32) __VERIFIER_assert_~cond) (not (= |__VERIFIER_assert_#in~cond| (_ bv0 32))))} assume !(0bv32 == ~cond); {3446#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} is VALID [2018-11-23 11:34:47,050 INFO L273 TraceCheckUtils]: 98: Hoare triple {3369#true} ~cond := #in~cond; {3798#(or (= (_ bv0 32) __VERIFIER_assert_~cond) (not (= |__VERIFIER_assert_#in~cond| (_ bv0 32))))} is VALID [2018-11-23 11:34:47,050 INFO L256 TraceCheckUtils]: 97: Hoare triple {3788#(or (not (bvslt (bvadd main_~i~0 (_ bv1 32)) main_~ielen~0)) (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} call __VERIFIER_assert((if ~bvslt32(~bvadd32(1bv32, ~p~0), ~bufsize_0~0) then 1bv32 else 0bv32)); {3369#true} is VALID [2018-11-23 11:34:47,051 INFO L268 TraceCheckUtils]: 96: Hoare quadruple {3369#true} {3788#(or (not (bvslt (bvadd main_~i~0 (_ bv1 32)) main_~ielen~0)) (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} #78#return; {3788#(or (not (bvslt (bvadd main_~i~0 (_ bv1 32)) main_~ielen~0)) (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} is VALID [2018-11-23 11:34:47,051 INFO L273 TraceCheckUtils]: 95: Hoare triple {3369#true} assume true; {3369#true} is VALID [2018-11-23 11:34:47,051 INFO L273 TraceCheckUtils]: 94: Hoare triple {3369#true} assume !(0bv32 == ~cond); {3369#true} is VALID [2018-11-23 11:34:47,051 INFO L273 TraceCheckUtils]: 93: Hoare triple {3369#true} ~cond := #in~cond; {3369#true} is VALID [2018-11-23 11:34:47,051 INFO L256 TraceCheckUtils]: 92: Hoare triple {3788#(or (not (bvslt (bvadd main_~i~0 (_ bv1 32)) main_~ielen~0)) (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} call __VERIFIER_assert((if ~bvsle32(0bv32, ~p~0) then 1bv32 else 0bv32)); {3369#true} is VALID [2018-11-23 11:34:47,051 INFO L273 TraceCheckUtils]: 91: Hoare triple {3788#(or (not (bvslt (bvadd main_~i~0 (_ bv1 32)) main_~ielen~0)) (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} assume !!(~bvslt32(~i~0, ~ielen~0) && ~bvsgt32(~bufsize~0, 2bv32)); {3788#(or (not (bvslt (bvadd main_~i~0 (_ bv1 32)) main_~ielen~0)) (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} is VALID [2018-11-23 11:34:47,073 INFO L273 TraceCheckUtils]: 90: Hoare triple {3823#(or (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~i~0 (_ bv2 32)) main_~ielen~0)) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} #t~post4 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post4);havoc #t~post4; {3788#(or (not (bvslt (bvadd main_~i~0 (_ bv1 32)) main_~ielen~0)) (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} is VALID [2018-11-23 11:34:47,143 INFO L273 TraceCheckUtils]: 89: Hoare triple {3827#(or (not (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0)) (bvslt (bvadd main_~p~0 (_ bv5 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~i~0 (_ bv2 32)) main_~ielen~0)))} ~p~0 := ~bvadd32(2bv32, ~p~0); {3823#(or (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~i~0 (_ bv2 32)) main_~ielen~0)) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} is VALID [2018-11-23 11:34:47,146 INFO L268 TraceCheckUtils]: 88: Hoare quadruple {3446#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} {3831#(or (not (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0)) (bvslt (bvadd main_~p~0 (_ bv5 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~i~0 (_ bv2 32)) main_~ielen~0)) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} #80#return; {3827#(or (not (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0)) (bvslt (bvadd main_~p~0 (_ bv5 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~i~0 (_ bv2 32)) main_~ielen~0)))} is VALID [2018-11-23 11:34:47,147 INFO L273 TraceCheckUtils]: 87: Hoare triple {3446#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} assume true; {3446#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} is VALID [2018-11-23 11:34:47,147 INFO L273 TraceCheckUtils]: 86: Hoare triple {3798#(or (= (_ bv0 32) __VERIFIER_assert_~cond) (not (= |__VERIFIER_assert_#in~cond| (_ bv0 32))))} assume !(0bv32 == ~cond); {3446#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} is VALID [2018-11-23 11:34:47,148 INFO L273 TraceCheckUtils]: 85: Hoare triple {3369#true} ~cond := #in~cond; {3798#(or (= (_ bv0 32) __VERIFIER_assert_~cond) (not (= |__VERIFIER_assert_#in~cond| (_ bv0 32))))} is VALID [2018-11-23 11:34:47,148 INFO L256 TraceCheckUtils]: 84: Hoare triple {3831#(or (not (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0)) (bvslt (bvadd main_~p~0 (_ bv5 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~i~0 (_ bv2 32)) main_~ielen~0)) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} call __VERIFIER_assert((if ~bvslt32(~bvadd32(1bv32, ~p~0), ~bufsize_0~0) then 1bv32 else 0bv32)); {3369#true} is VALID [2018-11-23 11:34:47,148 INFO L268 TraceCheckUtils]: 83: Hoare quadruple {3369#true} {3831#(or (not (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0)) (bvslt (bvadd main_~p~0 (_ bv5 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~i~0 (_ bv2 32)) main_~ielen~0)) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} #78#return; {3831#(or (not (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0)) (bvslt (bvadd main_~p~0 (_ bv5 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~i~0 (_ bv2 32)) main_~ielen~0)) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} is VALID [2018-11-23 11:34:47,148 INFO L273 TraceCheckUtils]: 82: Hoare triple {3369#true} assume true; {3369#true} is VALID [2018-11-23 11:34:47,148 INFO L273 TraceCheckUtils]: 81: Hoare triple {3369#true} assume !(0bv32 == ~cond); {3369#true} is VALID [2018-11-23 11:34:47,149 INFO L273 TraceCheckUtils]: 80: Hoare triple {3369#true} ~cond := #in~cond; {3369#true} is VALID [2018-11-23 11:34:47,149 INFO L256 TraceCheckUtils]: 79: Hoare triple {3831#(or (not (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0)) (bvslt (bvadd main_~p~0 (_ bv5 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~i~0 (_ bv2 32)) main_~ielen~0)) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} call __VERIFIER_assert((if ~bvsle32(0bv32, ~p~0) then 1bv32 else 0bv32)); {3369#true} is VALID [2018-11-23 11:34:47,149 INFO L273 TraceCheckUtils]: 78: Hoare triple {3831#(or (not (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0)) (bvslt (bvadd main_~p~0 (_ bv5 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~i~0 (_ bv2 32)) main_~ielen~0)) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} assume !!(~bvslt32(~i~0, ~ielen~0) && ~bvsgt32(~bufsize~0, 2bv32)); {3831#(or (not (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0)) (bvslt (bvadd main_~p~0 (_ bv5 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~i~0 (_ bv2 32)) main_~ielen~0)) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} is VALID [2018-11-23 11:34:47,183 INFO L273 TraceCheckUtils]: 77: Hoare triple {3865#(or (not (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0)) (bvslt (bvadd main_~p~0 (_ bv5 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~i~0 (_ bv3 32)) main_~ielen~0)) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} #t~post4 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post4);havoc #t~post4; {3831#(or (not (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0)) (bvslt (bvadd main_~p~0 (_ bv5 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~i~0 (_ bv2 32)) main_~ielen~0)) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} is VALID [2018-11-23 11:34:47,284 INFO L273 TraceCheckUtils]: 76: Hoare triple {3869#(or (not (bvslt (bvadd main_~p~0 (_ bv5 32)) main_~bufsize_0~0)) (not (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0)) (bvslt (bvadd main_~p~0 (_ bv7 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~i~0 (_ bv3 32)) main_~ielen~0)))} ~p~0 := ~bvadd32(2bv32, ~p~0); {3865#(or (not (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0)) (bvslt (bvadd main_~p~0 (_ bv5 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~i~0 (_ bv3 32)) main_~ielen~0)) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} is VALID [2018-11-23 11:34:47,288 INFO L268 TraceCheckUtils]: 75: Hoare quadruple {3446#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} {3873#(or (not (bvslt (bvadd main_~p~0 (_ bv5 32)) main_~bufsize_0~0)) (bvslt (bvadd main_~p~0 (_ bv7 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~i~0 (_ bv3 32)) main_~ielen~0)) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} #80#return; {3869#(or (not (bvslt (bvadd main_~p~0 (_ bv5 32)) main_~bufsize_0~0)) (not (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0)) (bvslt (bvadd main_~p~0 (_ bv7 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~i~0 (_ bv3 32)) main_~ielen~0)))} is VALID [2018-11-23 11:34:47,289 INFO L273 TraceCheckUtils]: 74: Hoare triple {3446#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} assume true; {3446#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} is VALID [2018-11-23 11:34:47,289 INFO L273 TraceCheckUtils]: 73: Hoare triple {3798#(or (= (_ bv0 32) __VERIFIER_assert_~cond) (not (= |__VERIFIER_assert_#in~cond| (_ bv0 32))))} assume !(0bv32 == ~cond); {3446#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} is VALID [2018-11-23 11:34:47,289 INFO L273 TraceCheckUtils]: 72: Hoare triple {3369#true} ~cond := #in~cond; {3798#(or (= (_ bv0 32) __VERIFIER_assert_~cond) (not (= |__VERIFIER_assert_#in~cond| (_ bv0 32))))} is VALID [2018-11-23 11:34:47,290 INFO L256 TraceCheckUtils]: 71: Hoare triple {3873#(or (not (bvslt (bvadd main_~p~0 (_ bv5 32)) main_~bufsize_0~0)) (bvslt (bvadd main_~p~0 (_ bv7 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~i~0 (_ bv3 32)) main_~ielen~0)) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} call __VERIFIER_assert((if ~bvslt32(~bvadd32(1bv32, ~p~0), ~bufsize_0~0) then 1bv32 else 0bv32)); {3369#true} is VALID [2018-11-23 11:34:47,297 INFO L268 TraceCheckUtils]: 70: Hoare quadruple {3369#true} {3873#(or (not (bvslt (bvadd main_~p~0 (_ bv5 32)) main_~bufsize_0~0)) (bvslt (bvadd main_~p~0 (_ bv7 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~i~0 (_ bv3 32)) main_~ielen~0)) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} #78#return; {3873#(or (not (bvslt (bvadd main_~p~0 (_ bv5 32)) main_~bufsize_0~0)) (bvslt (bvadd main_~p~0 (_ bv7 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~i~0 (_ bv3 32)) main_~ielen~0)) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} is VALID [2018-11-23 11:34:47,297 INFO L273 TraceCheckUtils]: 69: Hoare triple {3369#true} assume true; {3369#true} is VALID [2018-11-23 11:34:47,297 INFO L273 TraceCheckUtils]: 68: Hoare triple {3369#true} assume !(0bv32 == ~cond); {3369#true} is VALID [2018-11-23 11:34:47,297 INFO L273 TraceCheckUtils]: 67: Hoare triple {3369#true} ~cond := #in~cond; {3369#true} is VALID [2018-11-23 11:34:47,298 INFO L256 TraceCheckUtils]: 66: Hoare triple {3873#(or (not (bvslt (bvadd main_~p~0 (_ bv5 32)) main_~bufsize_0~0)) (bvslt (bvadd main_~p~0 (_ bv7 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~i~0 (_ bv3 32)) main_~ielen~0)) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} call __VERIFIER_assert((if ~bvsle32(0bv32, ~p~0) then 1bv32 else 0bv32)); {3369#true} is VALID [2018-11-23 11:34:47,298 INFO L273 TraceCheckUtils]: 65: Hoare triple {3873#(or (not (bvslt (bvadd main_~p~0 (_ bv5 32)) main_~bufsize_0~0)) (bvslt (bvadd main_~p~0 (_ bv7 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~i~0 (_ bv3 32)) main_~ielen~0)) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} assume !!(~bvslt32(~i~0, ~ielen~0) && ~bvsgt32(~bufsize~0, 2bv32)); {3873#(or (not (bvslt (bvadd main_~p~0 (_ bv5 32)) main_~bufsize_0~0)) (bvslt (bvadd main_~p~0 (_ bv7 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~i~0 (_ bv3 32)) main_~ielen~0)) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} is VALID [2018-11-23 11:34:47,325 INFO L273 TraceCheckUtils]: 64: Hoare triple {3907#(or (not (bvslt (bvadd main_~p~0 (_ bv5 32)) main_~bufsize_0~0)) (not (bvslt (bvadd main_~i~0 (_ bv4 32)) main_~ielen~0)) (bvslt (bvadd main_~p~0 (_ bv7 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} #t~post4 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post4);havoc #t~post4; {3873#(or (not (bvslt (bvadd main_~p~0 (_ bv5 32)) main_~bufsize_0~0)) (bvslt (bvadd main_~p~0 (_ bv7 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~i~0 (_ bv3 32)) main_~ielen~0)) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} is VALID [2018-11-23 11:34:47,449 INFO L273 TraceCheckUtils]: 63: Hoare triple {3911#(or (not (bvslt (bvadd main_~i~0 (_ bv4 32)) main_~ielen~0)) (bvslt (bvadd main_~p~0 (_ bv9 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0)) (not (bvslt (bvadd main_~p~0 (_ bv7 32)) main_~bufsize_0~0)))} ~p~0 := ~bvadd32(2bv32, ~p~0); {3907#(or (not (bvslt (bvadd main_~p~0 (_ bv5 32)) main_~bufsize_0~0)) (not (bvslt (bvadd main_~i~0 (_ bv4 32)) main_~ielen~0)) (bvslt (bvadd main_~p~0 (_ bv7 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} is VALID [2018-11-23 11:34:47,453 INFO L268 TraceCheckUtils]: 62: Hoare quadruple {3446#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} {3915#(or (not (bvslt (bvadd main_~i~0 (_ bv4 32)) main_~ielen~0)) (bvslt (bvadd main_~p~0 (_ bv9 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~p~0 (_ bv7 32)) main_~bufsize_0~0)) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} #80#return; {3911#(or (not (bvslt (bvadd main_~i~0 (_ bv4 32)) main_~ielen~0)) (bvslt (bvadd main_~p~0 (_ bv9 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0)) (not (bvslt (bvadd main_~p~0 (_ bv7 32)) main_~bufsize_0~0)))} is VALID [2018-11-23 11:34:47,453 INFO L273 TraceCheckUtils]: 61: Hoare triple {3446#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} assume true; {3446#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} is VALID [2018-11-23 11:34:47,454 INFO L273 TraceCheckUtils]: 60: Hoare triple {3798#(or (= (_ bv0 32) __VERIFIER_assert_~cond) (not (= |__VERIFIER_assert_#in~cond| (_ bv0 32))))} assume !(0bv32 == ~cond); {3446#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} is VALID [2018-11-23 11:34:47,454 INFO L273 TraceCheckUtils]: 59: Hoare triple {3369#true} ~cond := #in~cond; {3798#(or (= (_ bv0 32) __VERIFIER_assert_~cond) (not (= |__VERIFIER_assert_#in~cond| (_ bv0 32))))} is VALID [2018-11-23 11:34:47,454 INFO L256 TraceCheckUtils]: 58: Hoare triple {3915#(or (not (bvslt (bvadd main_~i~0 (_ bv4 32)) main_~ielen~0)) (bvslt (bvadd main_~p~0 (_ bv9 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~p~0 (_ bv7 32)) main_~bufsize_0~0)) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} call __VERIFIER_assert((if ~bvslt32(~bvadd32(1bv32, ~p~0), ~bufsize_0~0) then 1bv32 else 0bv32)); {3369#true} is VALID [2018-11-23 11:34:47,455 INFO L268 TraceCheckUtils]: 57: Hoare quadruple {3369#true} {3915#(or (not (bvslt (bvadd main_~i~0 (_ bv4 32)) main_~ielen~0)) (bvslt (bvadd main_~p~0 (_ bv9 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~p~0 (_ bv7 32)) main_~bufsize_0~0)) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} #78#return; {3915#(or (not (bvslt (bvadd main_~i~0 (_ bv4 32)) main_~ielen~0)) (bvslt (bvadd main_~p~0 (_ bv9 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~p~0 (_ bv7 32)) main_~bufsize_0~0)) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} is VALID [2018-11-23 11:34:47,455 INFO L273 TraceCheckUtils]: 56: Hoare triple {3369#true} assume true; {3369#true} is VALID [2018-11-23 11:34:47,455 INFO L273 TraceCheckUtils]: 55: Hoare triple {3369#true} assume !(0bv32 == ~cond); {3369#true} is VALID [2018-11-23 11:34:47,455 INFO L273 TraceCheckUtils]: 54: Hoare triple {3369#true} ~cond := #in~cond; {3369#true} is VALID [2018-11-23 11:34:47,455 INFO L256 TraceCheckUtils]: 53: Hoare triple {3915#(or (not (bvslt (bvadd main_~i~0 (_ bv4 32)) main_~ielen~0)) (bvslt (bvadd main_~p~0 (_ bv9 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~p~0 (_ bv7 32)) main_~bufsize_0~0)) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} call __VERIFIER_assert((if ~bvsle32(0bv32, ~p~0) then 1bv32 else 0bv32)); {3369#true} is VALID [2018-11-23 11:34:47,456 INFO L273 TraceCheckUtils]: 52: Hoare triple {3915#(or (not (bvslt (bvadd main_~i~0 (_ bv4 32)) main_~ielen~0)) (bvslt (bvadd main_~p~0 (_ bv9 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~p~0 (_ bv7 32)) main_~bufsize_0~0)) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} assume !!(~bvslt32(~i~0, ~ielen~0) && ~bvsgt32(~bufsize~0, 2bv32)); {3915#(or (not (bvslt (bvadd main_~i~0 (_ bv4 32)) main_~ielen~0)) (bvslt (bvadd main_~p~0 (_ bv9 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~p~0 (_ bv7 32)) main_~bufsize_0~0)) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} is VALID [2018-11-23 11:34:47,488 INFO L273 TraceCheckUtils]: 51: Hoare triple {3949#(or (bvslt (bvadd main_~p~0 (_ bv9 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~p~0 (_ bv7 32)) main_~bufsize_0~0)) (not (bvslt (bvadd main_~i~0 (_ bv5 32)) main_~ielen~0)) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} #t~post4 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post4);havoc #t~post4; {3915#(or (not (bvslt (bvadd main_~i~0 (_ bv4 32)) main_~ielen~0)) (bvslt (bvadd main_~p~0 (_ bv9 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~p~0 (_ bv7 32)) main_~bufsize_0~0)) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} is VALID [2018-11-23 11:34:47,621 INFO L273 TraceCheckUtils]: 50: Hoare triple {3953#(or (not (bvslt (bvadd main_~p~0 (_ bv9 32)) main_~bufsize_0~0)) (not (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0)) (not (bvslt (bvadd main_~i~0 (_ bv5 32)) main_~ielen~0)) (bvslt (bvadd main_~p~0 (_ bv11 32)) main_~bufsize_0~0))} ~p~0 := ~bvadd32(2bv32, ~p~0); {3949#(or (bvslt (bvadd main_~p~0 (_ bv9 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~p~0 (_ bv7 32)) main_~bufsize_0~0)) (not (bvslt (bvadd main_~i~0 (_ bv5 32)) main_~ielen~0)) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} is VALID [2018-11-23 11:34:47,624 INFO L268 TraceCheckUtils]: 49: Hoare quadruple {3446#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} {3957#(or (not (bvslt (bvadd main_~p~0 (_ bv9 32)) main_~bufsize_0~0)) (not (bvslt (bvadd main_~i~0 (_ bv5 32)) main_~ielen~0)) (bvslt (bvadd main_~p~0 (_ bv11 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} #80#return; {3953#(or (not (bvslt (bvadd main_~p~0 (_ bv9 32)) main_~bufsize_0~0)) (not (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0)) (not (bvslt (bvadd main_~i~0 (_ bv5 32)) main_~ielen~0)) (bvslt (bvadd main_~p~0 (_ bv11 32)) main_~bufsize_0~0))} is VALID [2018-11-23 11:34:47,625 INFO L273 TraceCheckUtils]: 48: Hoare triple {3446#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} assume true; {3446#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} is VALID [2018-11-23 11:34:47,625 INFO L273 TraceCheckUtils]: 47: Hoare triple {3798#(or (= (_ bv0 32) __VERIFIER_assert_~cond) (not (= |__VERIFIER_assert_#in~cond| (_ bv0 32))))} assume !(0bv32 == ~cond); {3446#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} is VALID [2018-11-23 11:34:47,626 INFO L273 TraceCheckUtils]: 46: Hoare triple {3369#true} ~cond := #in~cond; {3798#(or (= (_ bv0 32) __VERIFIER_assert_~cond) (not (= |__VERIFIER_assert_#in~cond| (_ bv0 32))))} is VALID [2018-11-23 11:34:47,626 INFO L256 TraceCheckUtils]: 45: Hoare triple {3957#(or (not (bvslt (bvadd main_~p~0 (_ bv9 32)) main_~bufsize_0~0)) (not (bvslt (bvadd main_~i~0 (_ bv5 32)) main_~ielen~0)) (bvslt (bvadd main_~p~0 (_ bv11 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} call __VERIFIER_assert((if ~bvslt32(~bvadd32(1bv32, ~p~0), ~bufsize_0~0) then 1bv32 else 0bv32)); {3369#true} is VALID [2018-11-23 11:34:47,626 INFO L268 TraceCheckUtils]: 44: Hoare quadruple {3369#true} {3957#(or (not (bvslt (bvadd main_~p~0 (_ bv9 32)) main_~bufsize_0~0)) (not (bvslt (bvadd main_~i~0 (_ bv5 32)) main_~ielen~0)) (bvslt (bvadd main_~p~0 (_ bv11 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} #78#return; {3957#(or (not (bvslt (bvadd main_~p~0 (_ bv9 32)) main_~bufsize_0~0)) (not (bvslt (bvadd main_~i~0 (_ bv5 32)) main_~ielen~0)) (bvslt (bvadd main_~p~0 (_ bv11 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} is VALID [2018-11-23 11:34:47,627 INFO L273 TraceCheckUtils]: 43: Hoare triple {3369#true} assume true; {3369#true} is VALID [2018-11-23 11:34:47,627 INFO L273 TraceCheckUtils]: 42: Hoare triple {3369#true} assume !(0bv32 == ~cond); {3369#true} is VALID [2018-11-23 11:34:47,627 INFO L273 TraceCheckUtils]: 41: Hoare triple {3369#true} ~cond := #in~cond; {3369#true} is VALID [2018-11-23 11:34:47,627 INFO L256 TraceCheckUtils]: 40: Hoare triple {3957#(or (not (bvslt (bvadd main_~p~0 (_ bv9 32)) main_~bufsize_0~0)) (not (bvslt (bvadd main_~i~0 (_ bv5 32)) main_~ielen~0)) (bvslt (bvadd main_~p~0 (_ bv11 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} call __VERIFIER_assert((if ~bvsle32(0bv32, ~p~0) then 1bv32 else 0bv32)); {3369#true} is VALID [2018-11-23 11:34:47,627 INFO L273 TraceCheckUtils]: 39: Hoare triple {3957#(or (not (bvslt (bvadd main_~p~0 (_ bv9 32)) main_~bufsize_0~0)) (not (bvslt (bvadd main_~i~0 (_ bv5 32)) main_~ielen~0)) (bvslt (bvadd main_~p~0 (_ bv11 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} assume !!(~bvslt32(~i~0, ~ielen~0) && ~bvsgt32(~bufsize~0, 2bv32)); {3957#(or (not (bvslt (bvadd main_~p~0 (_ bv9 32)) main_~bufsize_0~0)) (not (bvslt (bvadd main_~i~0 (_ bv5 32)) main_~ielen~0)) (bvslt (bvadd main_~p~0 (_ bv11 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} is VALID [2018-11-23 11:34:47,659 INFO L273 TraceCheckUtils]: 38: Hoare triple {3991#(or (not (bvslt (bvadd main_~p~0 (_ bv9 32)) main_~bufsize_0~0)) (not (bvslt (bvadd main_~i~0 (_ bv6 32)) main_~ielen~0)) (bvslt (bvadd main_~p~0 (_ bv11 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} #t~post4 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post4);havoc #t~post4; {3957#(or (not (bvslt (bvadd main_~p~0 (_ bv9 32)) main_~bufsize_0~0)) (not (bvslt (bvadd main_~i~0 (_ bv5 32)) main_~ielen~0)) (bvslt (bvadd main_~p~0 (_ bv11 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} is VALID [2018-11-23 11:34:47,808 INFO L273 TraceCheckUtils]: 37: Hoare triple {3995#(or (not (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0)) (bvslt (bvadd main_~p~0 (_ bv13 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~i~0 (_ bv6 32)) main_~ielen~0)) (not (bvslt (bvadd main_~p~0 (_ bv11 32)) main_~bufsize_0~0)))} ~p~0 := ~bvadd32(2bv32, ~p~0); {3991#(or (not (bvslt (bvadd main_~p~0 (_ bv9 32)) main_~bufsize_0~0)) (not (bvslt (bvadd main_~i~0 (_ bv6 32)) main_~ielen~0)) (bvslt (bvadd main_~p~0 (_ bv11 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} is VALID [2018-11-23 11:34:47,811 INFO L268 TraceCheckUtils]: 36: Hoare quadruple {3446#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} {3999#(or (bvslt (bvadd main_~p~0 (_ bv13 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~i~0 (_ bv6 32)) main_~ielen~0)) (not (bvslt (bvadd main_~p~0 (_ bv11 32)) main_~bufsize_0~0)) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} #80#return; {3995#(or (not (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0)) (bvslt (bvadd main_~p~0 (_ bv13 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~i~0 (_ bv6 32)) main_~ielen~0)) (not (bvslt (bvadd main_~p~0 (_ bv11 32)) main_~bufsize_0~0)))} is VALID [2018-11-23 11:34:47,812 INFO L273 TraceCheckUtils]: 35: Hoare triple {3446#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} assume true; {3446#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} is VALID [2018-11-23 11:34:47,812 INFO L273 TraceCheckUtils]: 34: Hoare triple {3798#(or (= (_ bv0 32) __VERIFIER_assert_~cond) (not (= |__VERIFIER_assert_#in~cond| (_ bv0 32))))} assume !(0bv32 == ~cond); {3446#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} is VALID [2018-11-23 11:34:47,812 INFO L273 TraceCheckUtils]: 33: Hoare triple {3369#true} ~cond := #in~cond; {3798#(or (= (_ bv0 32) __VERIFIER_assert_~cond) (not (= |__VERIFIER_assert_#in~cond| (_ bv0 32))))} is VALID [2018-11-23 11:34:47,813 INFO L256 TraceCheckUtils]: 32: Hoare triple {3999#(or (bvslt (bvadd main_~p~0 (_ bv13 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~i~0 (_ bv6 32)) main_~ielen~0)) (not (bvslt (bvadd main_~p~0 (_ bv11 32)) main_~bufsize_0~0)) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} call __VERIFIER_assert((if ~bvslt32(~bvadd32(1bv32, ~p~0), ~bufsize_0~0) then 1bv32 else 0bv32)); {3369#true} is VALID [2018-11-23 11:34:47,813 INFO L268 TraceCheckUtils]: 31: Hoare quadruple {3369#true} {3999#(or (bvslt (bvadd main_~p~0 (_ bv13 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~i~0 (_ bv6 32)) main_~ielen~0)) (not (bvslt (bvadd main_~p~0 (_ bv11 32)) main_~bufsize_0~0)) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} #78#return; {3999#(or (bvslt (bvadd main_~p~0 (_ bv13 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~i~0 (_ bv6 32)) main_~ielen~0)) (not (bvslt (bvadd main_~p~0 (_ bv11 32)) main_~bufsize_0~0)) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} is VALID [2018-11-23 11:34:47,813 INFO L273 TraceCheckUtils]: 30: Hoare triple {3369#true} assume true; {3369#true} is VALID [2018-11-23 11:34:47,813 INFO L273 TraceCheckUtils]: 29: Hoare triple {3369#true} assume !(0bv32 == ~cond); {3369#true} is VALID [2018-11-23 11:34:47,813 INFO L273 TraceCheckUtils]: 28: Hoare triple {3369#true} ~cond := #in~cond; {3369#true} is VALID [2018-11-23 11:34:47,814 INFO L256 TraceCheckUtils]: 27: Hoare triple {3999#(or (bvslt (bvadd main_~p~0 (_ bv13 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~i~0 (_ bv6 32)) main_~ielen~0)) (not (bvslt (bvadd main_~p~0 (_ bv11 32)) main_~bufsize_0~0)) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} call __VERIFIER_assert((if ~bvsle32(0bv32, ~p~0) then 1bv32 else 0bv32)); {3369#true} is VALID [2018-11-23 11:34:47,814 INFO L273 TraceCheckUtils]: 26: Hoare triple {4030#(or (bvslt (bvadd main_~p~0 (_ bv13 32)) main_~bufsize_0~0) (not (bvsgt main_~bufsize~0 (_ bv2 32))) (not (bvslt (bvadd main_~i~0 (_ bv6 32)) main_~ielen~0)) (not (bvslt (bvadd main_~p~0 (_ bv11 32)) main_~bufsize_0~0)) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} assume !!(~bvslt32(~i~0, ~ielen~0) && ~bvsgt32(~bufsize~0, 2bv32)); {3999#(or (bvslt (bvadd main_~p~0 (_ bv13 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~i~0 (_ bv6 32)) main_~ielen~0)) (not (bvslt (bvadd main_~p~0 (_ bv11 32)) main_~bufsize_0~0)) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} is VALID [2018-11-23 11:34:47,845 INFO L273 TraceCheckUtils]: 25: Hoare triple {4034#(or (bvslt (bvadd main_~p~0 (_ bv13 32)) main_~bufsize_0~0) (not (bvsgt main_~bufsize~0 (_ bv2 32))) (not (bvslt (bvadd main_~i~0 (_ bv7 32)) main_~ielen~0)) (not (bvslt (bvadd main_~p~0 (_ bv11 32)) main_~bufsize_0~0)) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} #t~post4 := ~i~0;~i~0 := ~bvadd32(1bv32, #t~post4);havoc #t~post4; {4030#(or (bvslt (bvadd main_~p~0 (_ bv13 32)) main_~bufsize_0~0) (not (bvsgt main_~bufsize~0 (_ bv2 32))) (not (bvslt (bvadd main_~i~0 (_ bv6 32)) main_~ielen~0)) (not (bvslt (bvadd main_~p~0 (_ bv11 32)) main_~bufsize_0~0)) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} is VALID [2018-11-23 11:34:48,049 INFO L273 TraceCheckUtils]: 24: Hoare triple {4038#(or (not (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0)) (not (bvsgt main_~bufsize~0 (_ bv2 32))) (bvslt (bvadd main_~p~0 (_ bv15 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~i~0 (_ bv7 32)) main_~ielen~0)) (not (bvslt (bvadd main_~p~0 (_ bv13 32)) main_~bufsize_0~0)))} ~p~0 := ~bvadd32(2bv32, ~p~0); {4034#(or (bvslt (bvadd main_~p~0 (_ bv13 32)) main_~bufsize_0~0) (not (bvsgt main_~bufsize~0 (_ bv2 32))) (not (bvslt (bvadd main_~i~0 (_ bv7 32)) main_~ielen~0)) (not (bvslt (bvadd main_~p~0 (_ bv11 32)) main_~bufsize_0~0)) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} is VALID [2018-11-23 11:34:48,053 INFO L268 TraceCheckUtils]: 23: Hoare quadruple {3446#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} {4042#(or (not (bvsgt main_~bufsize~0 (_ bv2 32))) (bvslt (bvadd main_~p~0 (_ bv15 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~i~0 (_ bv7 32)) main_~ielen~0)) (not (bvslt (bvadd main_~p~0 (_ bv13 32)) main_~bufsize_0~0)) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} #80#return; {4038#(or (not (bvslt (bvadd main_~p~0 (_ bv3 32)) main_~bufsize_0~0)) (not (bvsgt main_~bufsize~0 (_ bv2 32))) (bvslt (bvadd main_~p~0 (_ bv15 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~i~0 (_ bv7 32)) main_~ielen~0)) (not (bvslt (bvadd main_~p~0 (_ bv13 32)) main_~bufsize_0~0)))} is VALID [2018-11-23 11:34:48,054 INFO L273 TraceCheckUtils]: 22: Hoare triple {3446#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} assume true; {3446#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} is VALID [2018-11-23 11:34:48,054 INFO L273 TraceCheckUtils]: 21: Hoare triple {3798#(or (= (_ bv0 32) __VERIFIER_assert_~cond) (not (= |__VERIFIER_assert_#in~cond| (_ bv0 32))))} assume !(0bv32 == ~cond); {3446#(not (= |__VERIFIER_assert_#in~cond| (_ bv0 32)))} is VALID [2018-11-23 11:34:48,055 INFO L273 TraceCheckUtils]: 20: Hoare triple {3369#true} ~cond := #in~cond; {3798#(or (= (_ bv0 32) __VERIFIER_assert_~cond) (not (= |__VERIFIER_assert_#in~cond| (_ bv0 32))))} is VALID [2018-11-23 11:34:48,055 INFO L256 TraceCheckUtils]: 19: Hoare triple {4042#(or (not (bvsgt main_~bufsize~0 (_ bv2 32))) (bvslt (bvadd main_~p~0 (_ bv15 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~i~0 (_ bv7 32)) main_~ielen~0)) (not (bvslt (bvadd main_~p~0 (_ bv13 32)) main_~bufsize_0~0)) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} call __VERIFIER_assert((if ~bvslt32(~bvadd32(1bv32, ~p~0), ~bufsize_0~0) then 1bv32 else 0bv32)); {3369#true} is VALID [2018-11-23 11:34:48,055 INFO L268 TraceCheckUtils]: 18: Hoare quadruple {3369#true} {4042#(or (not (bvsgt main_~bufsize~0 (_ bv2 32))) (bvslt (bvadd main_~p~0 (_ bv15 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~i~0 (_ bv7 32)) main_~ielen~0)) (not (bvslt (bvadd main_~p~0 (_ bv13 32)) main_~bufsize_0~0)) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} #78#return; {4042#(or (not (bvsgt main_~bufsize~0 (_ bv2 32))) (bvslt (bvadd main_~p~0 (_ bv15 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~i~0 (_ bv7 32)) main_~ielen~0)) (not (bvslt (bvadd main_~p~0 (_ bv13 32)) main_~bufsize_0~0)) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} is VALID [2018-11-23 11:34:48,055 INFO L273 TraceCheckUtils]: 17: Hoare triple {3369#true} assume true; {3369#true} is VALID [2018-11-23 11:34:48,056 INFO L273 TraceCheckUtils]: 16: Hoare triple {3369#true} assume !(0bv32 == ~cond); {3369#true} is VALID [2018-11-23 11:34:48,056 INFO L273 TraceCheckUtils]: 15: Hoare triple {3369#true} ~cond := #in~cond; {3369#true} is VALID [2018-11-23 11:34:48,056 INFO L256 TraceCheckUtils]: 14: Hoare triple {4042#(or (not (bvsgt main_~bufsize~0 (_ bv2 32))) (bvslt (bvadd main_~p~0 (_ bv15 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~i~0 (_ bv7 32)) main_~ielen~0)) (not (bvslt (bvadd main_~p~0 (_ bv13 32)) main_~bufsize_0~0)) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} call __VERIFIER_assert((if ~bvsle32(0bv32, ~p~0) then 1bv32 else 0bv32)); {3369#true} is VALID [2018-11-23 11:34:48,073 INFO L273 TraceCheckUtils]: 13: Hoare triple {4042#(or (not (bvsgt main_~bufsize~0 (_ bv2 32))) (bvslt (bvadd main_~p~0 (_ bv15 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~i~0 (_ bv7 32)) main_~ielen~0)) (not (bvslt (bvadd main_~p~0 (_ bv13 32)) main_~bufsize_0~0)) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} assume !!(~bvslt32(~i~0, ~ielen~0) && ~bvsgt32(~bufsize~0, 2bv32)); {4042#(or (not (bvsgt main_~bufsize~0 (_ bv2 32))) (bvslt (bvadd main_~p~0 (_ bv15 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~i~0 (_ bv7 32)) main_~ielen~0)) (not (bvslt (bvadd main_~p~0 (_ bv13 32)) main_~bufsize_0~0)) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} is VALID [2018-11-23 11:34:48,078 INFO L273 TraceCheckUtils]: 12: Hoare triple {4076#(or (bvslt main_~bufsize~0 (bvmul (_ bv2 32) main_~ielen~0)) (not (bvsgt main_~bufsize~0 (_ bv2 32))) (bvslt (bvadd main_~p~0 (_ bv15 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~p~0 (_ bv13 32)) main_~bufsize_0~0)) (not (bvslt (_ bv7 32) main_~ielen~0)) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} assume !~bvslt32(~bufsize~0, ~bvmul32(2bv32, ~ielen~0));~i~0 := 0bv32; {4042#(or (not (bvsgt main_~bufsize~0 (_ bv2 32))) (bvslt (bvadd main_~p~0 (_ bv15 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~i~0 (_ bv7 32)) main_~ielen~0)) (not (bvslt (bvadd main_~p~0 (_ bv13 32)) main_~bufsize_0~0)) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} is VALID [2018-11-23 11:34:48,083 INFO L273 TraceCheckUtils]: 11: Hoare triple {4080#(or (not (bvslt (bvadd main_~leader_len~0 (_ bv1 32)) main_~bufsize~0)) (bvslt (bvadd main_~leader_len~0 (_ bv15 32)) main_~bufsize~0) (not (bvslt (bvadd main_~leader_len~0 (_ bv13 32)) main_~bufsize~0)) (bvslt (bvadd (bvneg main_~leader_len~0) main_~bufsize~0) (bvmul (_ bv2 32) main_~ielen~0)) (not (bvslt (_ bv7 32) main_~ielen~0)))} assume !~bvslt32(~bufsize~0, ~leader_len~0);~p~0 := 0bv32;~bufsize_0~0 := ~bufsize~0;~bufsize~0 := ~bvsub32(~bufsize~0, ~leader_len~0);~p~0 := ~bvadd32(~p~0, ~leader_len~0); {4076#(or (bvslt main_~bufsize~0 (bvmul (_ bv2 32) main_~ielen~0)) (not (bvsgt main_~bufsize~0 (_ bv2 32))) (bvslt (bvadd main_~p~0 (_ bv15 32)) main_~bufsize_0~0) (not (bvslt (bvadd main_~p~0 (_ bv13 32)) main_~bufsize_0~0)) (not (bvslt (_ bv7 32) main_~ielen~0)) (not (bvslt (bvadd main_~p~0 (_ bv1 32)) main_~bufsize_0~0)))} is VALID [2018-11-23 11:34:48,084 INFO L273 TraceCheckUtils]: 10: Hoare triple {4080#(or (not (bvslt (bvadd main_~leader_len~0 (_ bv1 32)) main_~bufsize~0)) (bvslt (bvadd main_~leader_len~0 (_ bv15 32)) main_~bufsize~0) (not (bvslt (bvadd main_~leader_len~0 (_ bv13 32)) main_~bufsize~0)) (bvslt (bvadd (bvneg main_~leader_len~0) main_~bufsize~0) (bvmul (_ bv2 32) main_~ielen~0)) (not (bvslt (_ bv7 32) main_~ielen~0)))} assume ~bvsgt32(~ielen~0, 0bv32); {4080#(or (not (bvslt (bvadd main_~leader_len~0 (_ bv1 32)) main_~bufsize~0)) (bvslt (bvadd main_~leader_len~0 (_ bv15 32)) main_~bufsize~0) (not (bvslt (bvadd main_~leader_len~0 (_ bv13 32)) main_~bufsize~0)) (bvslt (bvadd (bvneg main_~leader_len~0) main_~bufsize~0) (bvmul (_ bv2 32) main_~ielen~0)) (not (bvslt (_ bv7 32) main_~ielen~0)))} is VALID [2018-11-23 11:34:48,084 INFO L273 TraceCheckUtils]: 9: Hoare triple {4087#(or (bvslt (bvadd main_~leader_len~0 (_ bv15 32)) main_~bufsize~0) (not (bvslt (bvadd main_~leader_len~0 (_ bv13 32)) main_~bufsize~0)) (bvslt (bvadd (bvneg main_~leader_len~0) main_~bufsize~0) (bvmul (_ bv2 32) main_~ielen~0)) (not (bvsgt main_~bufsize~0 (_ bv0 32))) (not (bvslt (_ bv7 32) main_~ielen~0)))} assume ~bvsgt32(~bufsize~0, 0bv32); {4080#(or (not (bvslt (bvadd main_~leader_len~0 (_ bv1 32)) main_~bufsize~0)) (bvslt (bvadd main_~leader_len~0 (_ bv15 32)) main_~bufsize~0) (not (bvslt (bvadd main_~leader_len~0 (_ bv13 32)) main_~bufsize~0)) (bvslt (bvadd (bvneg main_~leader_len~0) main_~bufsize~0) (bvmul (_ bv2 32) main_~ielen~0)) (not (bvslt (_ bv7 32) main_~ielen~0)))} is VALID [2018-11-23 11:34:48,085 INFO L273 TraceCheckUtils]: 8: Hoare triple {4091#(or (bvslt (bvadd main_~leader_len~0 (_ bv15 32)) main_~bufsize~0) (not (bvslt (bvadd main_~leader_len~0 (_ bv13 32)) main_~bufsize~0)) (not (bvsgt main_~leader_len~0 (_ bv0 32))) (bvslt (bvadd (bvneg main_~leader_len~0) main_~bufsize~0) (bvmul (_ bv2 32) main_~ielen~0)) (not (bvsgt main_~bufsize~0 (_ bv0 32))) (not (bvslt (_ bv7 32) main_~ielen~0)))} assume ~bvsgt32(~leader_len~0, 0bv32); {4087#(or (bvslt (bvadd main_~leader_len~0 (_ bv15 32)) main_~bufsize~0) (not (bvslt (bvadd main_~leader_len~0 (_ bv13 32)) main_~bufsize~0)) (bvslt (bvadd (bvneg main_~leader_len~0) main_~bufsize~0) (bvmul (_ bv2 32) main_~ielen~0)) (not (bvsgt main_~bufsize~0 (_ bv0 32))) (not (bvslt (_ bv7 32) main_~ielen~0)))} is VALID [2018-11-23 11:34:48,131 INFO L273 TraceCheckUtils]: 7: Hoare triple {3369#true} assume !!~bvslt32(~ielen~0, 1000000bv32); {4091#(or (bvslt (bvadd main_~leader_len~0 (_ bv15 32)) main_~bufsize~0) (not (bvslt (bvadd main_~leader_len~0 (_ bv13 32)) main_~bufsize~0)) (not (bvsgt main_~leader_len~0 (_ bv0 32))) (bvslt (bvadd (bvneg main_~leader_len~0) main_~bufsize~0) (bvmul (_ bv2 32) main_~ielen~0)) (not (bvsgt main_~bufsize~0 (_ bv0 32))) (not (bvslt (_ bv7 32) main_~ielen~0)))} is VALID [2018-11-23 11:34:48,131 INFO L273 TraceCheckUtils]: 6: Hoare triple {3369#true} assume !!~bvslt32(~bufsize~0, 1000000bv32); {3369#true} is VALID [2018-11-23 11:34:48,132 INFO L273 TraceCheckUtils]: 5: Hoare triple {3369#true} assume !!~bvslt32(~leader_len~0, 1000000bv32); {3369#true} is VALID [2018-11-23 11:34:48,132 INFO L273 TraceCheckUtils]: 4: Hoare triple {3369#true} havoc ~p~0;havoc ~i~0;havoc ~leader_len~0;havoc ~bufsize~0;havoc ~bufsize_0~0;havoc ~ielen~0;~leader_len~0 := #t~nondet1;havoc #t~nondet1;~bufsize~0 := #t~nondet2;havoc #t~nondet2;~ielen~0 := #t~nondet3;havoc #t~nondet3; {3369#true} is VALID [2018-11-23 11:34:48,132 INFO L256 TraceCheckUtils]: 3: Hoare triple {3369#true} call #t~ret5 := main(); {3369#true} is VALID [2018-11-23 11:34:48,132 INFO L268 TraceCheckUtils]: 2: Hoare quadruple {3369#true} {3369#true} #74#return; {3369#true} is VALID [2018-11-23 11:34:48,132 INFO L273 TraceCheckUtils]: 1: Hoare triple {3369#true} assume true; {3369#true} is VALID [2018-11-23 11:34:48,132 INFO L256 TraceCheckUtils]: 0: Hoare triple {3369#true} call ULTIMATE.init(); {3369#true} is VALID [2018-11-23 11:34:48,163 INFO L134 CoverageAnalysis]: Checked inductivity of 576 backedges. 107 proven. 217 refuted. 0 times theorem prover too weak. 252 trivial. 0 not checked. [2018-11-23 11:34:48,165 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 11:34:48,165 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [36, 33] total 66 [2018-11-23 11:34:48,166 INFO L78 Accepts]: Start accepts. Automaton has 66 states. Word has length 114 [2018-11-23 11:34:48,196 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-23 11:34:48,196 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 66 states. [2018-11-23 11:34:56,844 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 140 edges. 140 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-23 11:34:56,844 INFO L459 AbstractCegarLoop]: Interpolant automaton has 66 states [2018-11-23 11:34:56,845 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 66 interpolants. [2018-11-23 11:34:56,846 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=657, Invalid=3633, Unknown=0, NotChecked=0, Total=4290 [2018-11-23 11:34:56,846 INFO L87 Difference]: Start difference. First operand 99 states and 112 transitions. Second operand 66 states. [2018-11-23 11:35:08,412 WARN L180 SmtUtils]: Spent 153.00 ms on a formula simplification. DAG size of input: 28 DAG size of output: 26 [2018-11-23 11:35:11,648 WARN L180 SmtUtils]: Spent 171.00 ms on a formula simplification. DAG size of input: 30 DAG size of output: 28 [2018-11-23 11:35:12,658 WARN L180 SmtUtils]: Spent 223.00 ms on a formula simplification. DAG size of input: 35 DAG size of output: 31