Since each double spend, from its perspective, is a valid transaction, they are equally likely to be selected as tips. How will multiple parties agree for certain which one has confirmed, in a timely and deterministic fashion?
In every DLT, a transaction have a probability to be valid. (In Bitcoin, a transaction is valid as long as it is written in the longest chain, so the probability for your transaction to be invalid is the probability that a longer chain exists somewhere without your transaction).
In a blockchain like Bitcoin: 2 conflicting transactions cannot be in the longest blockchain.
In the tangle it is fundamentally different: 2 conflicting transactions can be in the tangle. It is not a problem because only one of them will eventually be seen as valid.
The probability for a transaction to be valid is equals to the proportion of tips validating the transaction (directly or indirectly). I created some illustrations to explain how a double spend is detected. Let's start with a tangle without a conflict:
In this example, the tangle choose Y as valid, fundamentally this decision was random, but once this decision is taken it become practically impossible to revert it.
Regarding the time to detect, you can figure out that it depends on:
- the number of new transactions
- the average "width" of the tangle
Generally speaking, the double-spend which is directly and indirectly referenced by more transactions (i.e. has a larger cumulative weight) will most probably get confirmed. This is because more nodes will have accepted that double-spend and will thus impose their consensus on the rest of the network (eventually) by simply ignoring/orphaning the other double-spend. Note that I am talking probabilistic terms.
One could compare this to bitcoin where the longest chain will always prevail.