You do not have to remove UC4 to be UML compliant (it is not wrong), but it is good to remove it for a different reason (best practice). Let me explain.
Eventually, every use case must be further specified, using plain text and/or using diagrams, in order to specify the flows of events (the steps in the user-system communication).
Several use cases may have partially the same flows of events. Without using «include» relationships, you would have to specify these flows in each of these use cases. To avoid duplication of specification (and thus the danger of inconsistencies), you may factor out the duplicate specification in separate "use cases" and use «include» relationships to indicate which use cases share which flows.
By the way, the "use cases" representing the shared parts of other use cases, may not be complete use cases in themselves, therefore I write "use cases" in quotes. Such an incomplete "use case" is not directly associated with an actor in the use case diagram. Personally, I think this should be allowed, but this is debatable.
In your example, the «include» from UC3 to UC2 is fine, because it avoids duplication of the UC2 flows in the specification of UC3.
However, the «include» from UC3 to UC4 makes no sense, because you could include the UC4 flows in UC3 and then remove UC4. This «include» relationship does not avoid any duplication of texts or diagrams.
Yes, the same applies to the «include»-relationship from "Search docs - full text" to "Download doccs".
For more information, see "Master the Use Case Include Relationship"