/// self and other must not be a Nan
self and other must not be a Nan
self and other must not be a Nan
fn add_inner(&self, other: &Rat) -> Rat {
        let (mut a1, a2) = (
            Self::scale_denom(&self.a, &other.b.nat),
            Self::scale_denom(&other.a, &self.b.nat),
            );
        a1 += a2;
        let b = Self::mul_denom(&self.b.nat, &other.b.nat);
        let mut z = Rat {a: a1, b: BigInt {nat: b, sign: Natural}};
        z.norm();
        z
    }
fn add_inner ( & self , other : & Rat ) -> Rat { let ( mut a1 , a2 ) = ( Self :: scale_denom ( & self . a , & other . b . nat ) , Self :: scale_denom ( & other . a , & self . b . nat ) , ) ; a1 += a2 ; let b = Self :: mul_denom ( & self . b . nat , & other . b . nat ) ; let mut z = Rat { a : a1 , b : BigInt { nat : b , sign : Natural } } ; z . norm ( ) ; z }
self and other must not be a Nan
self and other must not be a Nan
&self
other
&Rat