I do not understand how the IOTA Tangle DAG indicates by its structure the temporal order when two spends are on separate, independent, branches.
It is possible that two transactions occur and are found at two different sites within the Tangle. All the Tangle shows me is that the transaction occurred at some time after the two previous transactions that it referenced (trunk and branch).
Furthermore, branch and trunk transactions are determined by a 'best-attempt' random method. This is known as the MCMC Walk and it works using a set of transactions known to the local node. This creates a random transaction graph and does not enforce an order on where a subsequent transactions appear within the graph.
Tf = (Ta,Tb)
Tg = (Ta,Tc)
All that we know is that Tf and Tg come after Ta,Tb, Tc. We know the 'graph-order' but we do not know the transaction events as they happened in time (temporal order) for Tf and Tg.
Suppose there is a double-spend and someone needs to determine which one is the first (legitimate) spend. When that happens, how is the temporal order of them determined?
How is temporal order of transactions determined?