I was wondering how it was possible because of the following thinking:

Let's assume that Bitcoin Cash's hashpower is smaller than Bitcoin's. Then they would start mining at the same point in the Blockchain and one of them would find the next block. If it were Bitcoin's, both would mine from this new block because both would accept the new block. If it were Bitcoin Cash's, then Bitcoin would ignore the new block and a fork would happen.

But, as Bitcoin would, on average, find more blocks than Bitcoin Cash, and their blocks are accepted by Bitcoin Cash, the fork would never really occur because the longest valid chain would be Bitcoin's.

Bitcoin Cash miners would be flipping between their and Bitcoin's blockchain.

2 Answers
2

But, as Bitcoin would, on average, find more blocks than Bitcoin Cash, and their blocks are accepted by Bitcoin Cash, the fork would never really occur because the longest valid chain would be the one made by Bitcoin Core.

Bitcoin Cash changed their consensus rules to ensure that the fork occurs. In particular, the forking block needs to be larger than 1 Megabyte as this makes the block invalid on the Bitcoin blockchain. Likewise Bitcoin blocks at that particular point in time will be less than 1 Megabyte in size so Bitcoin Cash nodes won't switch to using the Bitcoin blockchain as it violates their consensus rules.