Yes. This is from the paper.
Here's the explanation:
After we get R1, R2, R3, R4, we need to calculate r1, r2, r3, r4 from which we get the roots. Now, `Ri = ri**5 (i = 1 to 4)` so we we'll actually get five r's for every R. To determine the correct r's for every R, there are two tests:

First test:
If r1 be any fifth root of R1, and r4 be any  fifth root of R4, then
`Im[r1 * r4] = 0`

Here we are checking that:
https://github.com/prasoon2211/sympy/blob/2fbfd20be96aa67d5bd18cf526e3ba9888f1ad85/sympy/polys/polyroots.py#L411

Second test:
Now, r1 and r4 have been determined.
Let:
```
testplus = (u + v*delta*sqrt(5)).n()
testminus = (u - v*delta*sqrt(5)).n()
```
If r2 and r3 are fifth roots of R2 and R3 respectively, then:
```
r1 * r2**2 + r4 * r3**2 = testplus
r3t * r1**2 + r2 * r4**2 = testminus
```
This is what has been implemented here. Of course, since these are floats, so we are not comparing directly.