This is a problem with precision when converting between floats and integers. When you enter 4.004, this should be passed to Premiere as 1,017,080,064,000 ticks. But when this integer is converted to a float, the actual value being stored is 1,017,080,053,760 which when converted back to seconds gives you 4.003999959687.... This is what happens when using single-precicion floats, so the effect should not be as dramatic when using double precision, but that's just guessing...
... View more