I have tried to add an experimental data point to the discussion on computer chess progress. Originally, I wanted to use Rebel Century or Rebel 6, but it turned out they didn't really adhere to Arena's time limit

So I ended up running Ruffian 1.05 (2002 if I am not mistaken, not the very best engine around then, but in the top group) against Stockfish 7 32-bit. I did this on an older Laptop (Pentium M, 1.5GHz, Win XP), 1000 games (starting from Ed Schröders work1.pgn) at 1s/move.
Ruffian was getting a bit more than 1MN/s, SF about half. Ruffian is 14 years old (so not quite the 20 years I had in mind, but close) and in the CCRL 40/40 list, stockfish 7 64 bit is on 3246, ruffian on 2608, a 638 point rating difference. SF 2.2.2 is on the list with both 32- and 64 bit versions, and has a 26 point rating difference there, so I could estimate a 612 point rating difference between SF7 and ruffian 1.0.5 according to the CCRL 40/40 list.
I would put 1s/move on the Pentium M 1.5GHz to around 100 times (s)lower than the CCRL 40/40 processing power. Theoretically it's possible that at lower NPS some things don't work any more. It's also possible that the rating list is sort of inconsistent because top engines are not playing older engines any more.
My experiment says otherwise: Stockfish won 974-26, Arena calculates a rating difference of 604 elo, really surprisingly close to the 612 of the CCRL list.
So I think I'll claim that this backs up my original claim of 750 elo over 20 years due to software alone, and that this would theoretically have been possible 20 years ago too - the algorithms just were not there. It would be nice to try even older top engines (Shredder or Fritz 5.32) but I have no access to them.
cheers
Martin