I may be remembering wrong, but reasoning was first demonstrated by DeepSeek. Edit: I am indeed remembering wrong, seems o1 was first.
A month before the R1 paper came out, they released the Deepseek math paper which described their method for MoE load balancing.