In this case there is not even any reverse engineering as such. These are values that IIUC Fruit computes at startup while Rybka has them precomputed. What that section was showing was merely that these tables were most likely computed using the code from Fruit, but with scaled and (automatically?) adjusted weights.

So you're totally correct in that displaying the hypothetical source code in such situation was questionable. It's not a horribly strong bit of evidence, and as an isolated incident, this would hardly be interesting. But as one more piece in a pattern of persistent copying, more so. In particular, it's worth noting that e.g. the code from earlier versions of Fruit would require larger changes than just tweaking these weights to generate the same output tables, making it pretty unlikely that this is just a case of convergent evolution.

So if the PST tables are weak, what's the stronger evidence?

First of all, there's the circumstances of the rebirth of the project:

- Older versions of Rybka were indisputably based on Crafty. (Including replicating some harmless bugs in exactly the same places as a certain version of Crafty, making it possible to pinpoint the point of plagiarism fairly closely to a specific Crafty version).

- After Fruit was released, suddenly Rybka loses all the similarity to Crafty, and acquires similarities to Fruit.
This coincides with:

++ Rybka becoming a dramatically stronger player.

++ Rybka losing features that it previously had in support code.

++ Rybka gaining new idiosyncracies in support code, matching those of Fruity.

++ Rybka losing some game playing / evaluation features that it (and Crafty) previously had but Fruit didn't.

++ Rybka suddenly acquiring an evaluation feature set that is a very close match to those of Fruity. Very close, as in
much closer than any unrelated engines are to each other, than previous versions of Rybka to the then current versions, or that version of Rybka to much later versions.

++ Rybka suddenly acquiring new fairly arbitary data structures that match those of the same specific version of Fruit, while not matching those of other Fruit version (e.g. the hash structure).

And probably other things, it's been a while since I read the papers.

It's very surprising to me that somebody could read through all of the evidence and believe there's no foul play going on. It seems totally unreasonable to assume that he first wrote from scratch a chess engine that managed to very exactly replicate the foibles of a top open source engine, then threw all of that code out and rewrote from scratch a new engine that happened to replicate the idiosyncracies of
a completely unrelated and stronger open source engine.

It seems much more believe that substantial parts of the code of Rybka were copied verbatim from Fruit, and that other substantial parts were ported over to use a different structure in a way that's not really showing a lot of creativity.

Did Rajlich also substantially improve on the code? Clearly at some point he must have, it did eventually become a much stronger program. It's hard to say how much of this original innovation there was in Rybka 1/2, which as I understand are the particularly contentious versions.

Did Rybka later evolve beyond the Fruity origings? Almost certainly so.

Does any of that excuse either violating the GPL or claiming that it was all his own work, at most "inspired" by others? Clearly not.