I cannot determine whether both of these instances are appropriate uses of present perfect.

Scenario: We just pull up to a restaurant and notice we are the first/last ones there, and someone utters:

  1. "We have arrived before the others" [have arrived].
  2. "We have arrived after the others" [have arrived].

For some reason #1 sounds OK, but #2 sounds strange--I am unsure if the "after" somehow prohibits present perfect in the main clause here.


Present perfect is fine in both cases here. Both sentences are perfectly good English.

As a comment notes, however, native speakers would contract "we have" to "we've." Furthermore, in the U.S., we stay away from the present perfect when indicating something that just happened. Instead, we'd find a different way to express this - e.g., "We got here before everyone else" or "We're the last ones to arrive" etc.