Well, what was wrong with the first proof, besides being, sort of, conceptually a bit unattractive, because, you know, you verify things, I mean, was that it didn't include some generalisations that we had in mind. Later on I got involved in more generalisations which involved equivariant index theorem, how symmetries act, groups. And that… well, you can, now in subsequent retrospect probably build up a cobordism proof of that as well by doing equivariant cobordism theory, but that gets very messy because all the fixed point sets have to be taken into account. So whereas the good proof should go through like that, and so that was one of the consequences of that one.
And another version is, you know, the theorem for families of operators. Again if you had a cobordism thing you'd have to do… you'd have the cobordism for families and that would generate a lot more […]. And finally, well these subtleties to do with the real case, where you get mod 2 things, and that you couldn't possibly do by cohomological calculations of the type which the original proof was. So there were any number of generalisations which wouldn’t work, which wouldn't have worked with the original proof, and at the back of my mind was also the fact that the original proof was the analogue of Hirzebruch's proof of his Riemann-Roch theorem, it was modelled on that with the cobordism argument. Whereas the Grothendieck proof which was (a) more general, and (b) more direct, was much nicer, subsequently. And so we were aiming for something which was a bit more like the Grothendieck proof, and in some sense eventually we got there, the various different stages.
So we knew that cobordism was sort of the quick way – first proof to check it's right – but it was quite clear that for lots of reasons it wasn't going to be the best solution. So as soon as we got other ideas we… and of course the proof which we published in the Annals [sic], it was based on the analogue of Grothendieck's approach of combining things with embeddings and projections, and so once you've got an embedding then you have to sort of understand how to extend things in the normal bundle direction. And although it's not so self-contained as the algebraic geometry approach… algebraic geometry… the difference between algebraic geometry and the index theory… the algebraic, the topology and the analysis are combined, they're the same thing, yes. I mean the vector bundles on the one hand, everything algebraic, vector bundles and you make constructions with sheaves and you stay within the same category, whereas in the index theorem the two sides are a bit different, further apart, the topological side on the one hand and the analysis is quite a long way apart. You have to try to bring them together, and in some sense we… one succeeds after a while, but in algebraic geometry you start off more or less next door to each other.
So when we took Grothendieck's proof we had to, sort of, somehow extract out the part of it that we could understand at the time which was embeddings and extensions. But the extensions are messier, you don't have the elegance of sheaf theory to just do like that, you have to build it up and you have to worry about different kinds of analysis, and Hörmander helped us with all that. And so it was… it was quite hard work, doing that, but once you'd got the embeddings the structure is elegant and then you can extend it to symmetries without any additional effort. So certainly that was the right thing to do and, I mean, that was the version we published, whereas the other version we gave in seminars and Palais published it, and they had that seminar on the index theorem in institute where they worked it out in that way. But it was… obviously right from the beginning we wanted something better to get the generalisations.