\fp_eval:n { exp(1) - (1+1/1009)^{1009} } -> 0.001346 \fp_eval:n { exp(1) - (1+1/1010)^{1010} } -> 0.001613 \fp_eval:n { exp(1) - (1+1/1011)^{1011} } -> 0.001343 (1+1/n)^n should approach e monotonically, so there is clearly an error when n = 1010. Similarly, there are errors when n = 1020 and 1032, and at 505 (half of 1010, but 510 and 516 seem to be OK). Andrew PS. I haven't been testing l3fp integer by integer (truly). This just popped out at me when testing a LyX package based on l3fp that I've been working on.