use core::cmp::max;
use core::fmt::{Debug, Display, Formatter};
-use core::ops::{Add, Sub, Mul};
+use core::ops::{Add, Mul, Sub};
type Word = u64; // element type of the vectors we use
const WORDLEVELS: usize = 6; // 2^{2^6} = 64 = size of Word
impl<'a, 'b> Sub<FiniteNimberRef<'a>> for FiniteNimberRef<'b> {
type Output = FiniteNimber;
- fn sub(self, other: FiniteNimberRef<'a>) -> FiniteNimber { self + other }
+ fn sub(self, other: FiniteNimberRef<'a>) -> FiniteNimber {
+ self + other
+ }
}
impl<'a> FiniteNimberRef<'a> {
}
}
- fn mul_recurse(self, other: FiniteNimberRef<'a>, level: usize) -> FiniteNimber {
+ fn mul_recurse(
+ self,
+ other: FiniteNimberRef<'a>,
+ level: usize,
+ ) -> FiniteNimber {
match level.checked_sub(1) {
Some(sublevel) => {
let (alo, ahi) = self.split(sublevel);