I have a 2001 740iL with 72000 miles about 4 months ago the SES light came on. I went by the local parts store and had the codes read P034 (oxygen sensor position 1 bank 1, P1158 manufacture specific code). I bought my own code scanner and replaced both upstream sensors and cleared all codes.
P034 gone, P1158 Fuel Trim additve Bank 1 Low returned after 30 mile drive.
Expert answer was replace the downstream sensors as well. I did this and again the P1158 code returned after 30 miles. I have not replaced the oil seperation valve yet but the car is not exhibiting the problems associated with that part.
I think this problem may be related voltage signal issues within the system.