I like the focus on tools to assist the human, rather than automating merge conflicts. Even if you come up with a new clever algo that reduces merge conflicts by x% from where we are now, how do you decide that these two pieces of now non-conflicting don't interact with eachother to produce undersirable behaviour? Unless you solve that pretty well, I much prefer the pattern of keeping a human brain in the loop.