I've read that transactions in the same block that call the same contract will execute in an arbitrary order if sent from different accounts.

My question is, for any given transaction that may be calling a contract method, is it possible for that method to:

  1. Know about the other transactions in its block, and if so
  2. Adjust its execution based on what it sees