pub fn mul_div_floor(x: Number, y: Number, denom: Number) -> Number
Multiplies and divides with flooring: floor(x * y / denom). Uses 512-bit intermediate (U512) to avoid overflow; returns 0 if denom is 0.