Having watched it on the telly, & replayed it several times, watched it in slow motion & compared it with the previous lap, I think both drivers must share responsibility.
Prost did almost exactly the same on the previous lap - checked his right-hand mirror, defended the outside line & turned in sharply. It appears that he was expecting Heidfeld to make his overtaking move around the outside, not the inside as he actually did.
I suspect that Heidfeld's lunge down the inside was never going to work - looks to me like he was carrying too much speed to ever make the turn.
So, one driver makes a stupid overtaking move, one driver doesn't check both mirrors. . . pick the bones off of that, as my old granny used to say. I'm just glad that in similar situations my role is to report the facts, not to make a pronouncement on who, if anyone, was to blame.