separate fixed-point function