Floating Point is Not Associative
lTry this:
lsumup(m, n)   = m > n ? 0 : 1./m + sumup(m+1, n);
lsumdown(m, n) = m > n ? 0 : 1./n + sumdown(m, n-1);
ltest(n) = sumup(1, n) == sumdown(1, n);

lmap(test, range(1, 100));

l[1, 1, 1, 1, 1, 0, 1, 1, 0, 1, 1, 1, 1, 0, 0, 0, 0, 1, 0, 1,
 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 1, 0, 0, 1,
 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1, 1, 1, 1, 1, 0,
 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0]

lGrouping sensitivity is due to round-off error.