trying to derive multithread P_t ... still working on