I have a question, I have read this sentence:
the Western powers now yielded when they should have resisted
but I do not understand why they use the present perfect at the end of the sentence 'have resisted' after the auxiliary verb should.
Here is the best answer to your question:
We can use 'should have' to talk about past events that did not happen.
- I should have let her know what was happening but I forgot.
- He should have sent everybody a reminder by email.
- They should have remembered that their guests don't eat pork.