from .math_rational_rational import rational_from_wide, rational_parts from .math_rational_types import Rational def multiply_rational(a: Rational, b: Rational) -> Rational: """a × b, reduced.""" an, ad = rational_parts(a) bn, bd = rational_parts(b) return rational_from_wide(an * bn, ad * bd)