@Cerin My interpretation of the snippet is that the BM25(using fts) assigns numerically higher value for a better match and then returns the results in ascending order (by default), thus returning the ranks in the order from worst to best. But, for getting the best matches first, we need to order by DESC. So, to include best to worst order or DESC, (-1) is multiplied (as indicated in the formula) to converts the positive integers ranks into negative integer ranks. When these ranks are ordered in ascending (which is by default), we would get the smallest rank (best rank) at the top, followed by the largest at the bottom (worst rank).
This should be best illustrated by an example.
Say BM25(using fts) gives ranks based on the formula and without any ascending or descending sorting 2,4,6
When sorting is done in ascending order(by default), we would get in order2,4,6 with 2 being the worst rank and 6 being the best rank, as a better match gets a higher score.
But, to accommodate the order best to worst, we multiply by -1 and then apply the ascending order, so that we get -6,-4,-2
So in your case, you are correct as -4 is a better than -2, going by the same logic.
Hope, that I could clarify stuff.