Every hole in the cheese slices, including operator error, is important. And operator error is an important kind of error in particular, not because we need to prosecute somebody but because many forms of operator error can be mitigated using better system design, but you won't figure that out if you blind yourself to operator errors.
Throwing up our hands about how hard a problem this is seems like a ridiculous position to stake. If we can design self-driving cars, that operate safely in far less controlled environments, we can figure out the linear offset of a large vehicle traveling along a physical rail running along a fixed pre-determined path.
If I can have reasonably accurate gps readings of my phone while I'm on the train, there is zero reason for train companies to not have systems that are at least as accurate.
"Reasonably accurate GPS" trying to determine which track you're on at 150 mph is not as simple as you make it sound. Yeah, it can determine how far along the track you are. But when you get two trains moving toward each other, each at 150 MPH, do you really trust that GPS to tell you that they're on different tracks?
Keeping track of which parallel track a train was on automatically was a solved problem a hundred years ago, using relays and lights and hard-wired logic. Adding computers and GPS greatly increases the precision with which dispatch knows position and speed along the track, but knowing which track has not changed in the last century.
Isn't the ability to do so the basis of operation for e.g. the German LZB train protection system, which has been around since the 1960s?
If you mean that train protection systems don't (exclusively) rely on self-reported positions, your statement makes a bit more sense, but even that is changing with e.g. newer ETCS levels which do rely on self-positioning more and more.
And some problems are just _open_ to outside looks. My assistant tells me that the room for error in trains on one dimension ('left - right') is mere 10s of centimeters. I understand that problem. But what track you are on, isn't that obvious to the human in the cabin? (Again, simplifying, not flaming. Production ready safety is _hard_.) So could a vision based solution help count tracks from left to right? (Assistant: "US PTC, on about 54,000 route-miles, uses GPS for the lead locomotive plus crew-entered track information and switch position".) So you use the dimension that matters most in crashes (forwards / backwards) from satellite, augmented with vision or human based left-right positioning. Some trains already have sensors to sense things like leaves on the track to adjust speeding and braking... So the sensor based approach is already there.
Perhaps I am read as suggesting that the problem is easy, and that is not my intention. But for cars this was solved decades ago for routing and years ago for self-driving. I use that daily. Flying is organised with a very clear 6 sigma approach. Crashes are nearly always situations where events / risks stack. Trains (in Spain)...?
Tl;dr - Safety is a function of (human; process; technology) and there is clearly something lacking for trains, when compared to other types of transport.