I know this is old but someone might see this and get confused. Your understanding is backwards, it's not retarding 5* as that would be counterproductive of what you need and you'd have to have a negative value instead of a positive in order to do that. If you have a value of 5*, that is asking to add 5* before the multiplier takes effect. So you have a value of 5* times the multiplier or in your example 0.4 thats 5 times 0.4 which equals 2* of advance. That means that value of 2* will be added onto the base map. Say your base map is asking for -2, the math is -2+2=0* so your injection timing would start 0* BTDC instead of the base map's -2 value... As the multiplier decrease you will have a lessor and lessor value added until your multiplier reaches 0, because 5 times 0 is 0 or your base injection table value of -2 is now -2+(5x0)=-2 so no timing is added to the base map. This is why the multiplier value decreases with temp increase, as you've stated less advance is required with temp increase. Your base map should be set at temp and then the numerical number and multiplier added as required.