It seems this bug existed in VB6 Aurora too so I will leave it out of a bug report thread for a particular version.
We know that for targets smaller than a sensor's resolution, its max detection radius is
(target size / sensor resolution)^2 * sensor max range
Let's check the following sensor:
Resolution 1 Maximum Range vs 50 ton object (or larger): 8,574,929 km
Range vs Size 6 Missile (or smaller): 933,810 km
Range vs Size 8 Missile: 1,371,989 km
Range vs Size 12 Missile: 3,086,975 km
For size 8, it is
(8/20)^2*8,574,929=1,371,988.64
close enough.
For size 12, it is
(12/20)^2*8,574,929=3,086,974.44
again, close enough
However, as shown in the picture, for size 6 the calculation breaks down.
(6/20)^2*8,574,929=771,743.61
which is apparently much smaller than 933,810. Instead, if we do the following:
(6.6/20)*2*8,574,929=933,809.7681
this time, it seems to match exactly.
Let's look at another senor:
Active Sensor Strength 60.0 Sensitivity Modifier: 320%
Sensor Size 1.0 HS (50 tons) HTK 1
Resolution 1 Maximum Range vs 50 ton object (or larger): 24,721,520 km
Range vs Size 6 Missile (or smaller): 2,692,174 km
Range vs Size 8 Missile: 3,955,443 km
Range vs Size 12 Missile: 8,899,747 km
Again:
(6/20)^2*24,721,520=2,224,936.8
(6.6/20)^2*24,721,520=2,692,173.528
Again, seems the second one matches perfectly.
Since the calculations for 8 and 12 MSP missiles are correct, I suspect the bug is in the code that limits the min missile size, where 6MSP is typoed as 6.6MSP, or something like that.