Thank you! --- [EMAIL PROTECTED] wrote: [nice proof snipped]
> Thus the correct algorithm reads > > > scaleSequence :: Int -> Int -> [Int] -> [Int] > > scaleSequence s t > > = map scale > > where > > scale n = (n*range) `div` maxn + s > > range = t - s > > maxn = modulus - 1 > > modulus = 65536 > > Given your example, > Main> any (==966) (scaleSequence 1 966 ([65231] ++ [1..965] > ++[65565])) > True > Main> any (>966) (scaleSequence 1 966 ([65231] ++ [1..965] > ++[65565])) > False In your examples you added one more element to the end of the list. Its value is greater than maxn -- maybe I'm missing something? Cheers, Dimitre Novatchev. __________________________________________________ Do You Yahoo!? Yahoo! Health - your guide to health and wellness http://health.yahoo.com _______________________________________________ Haskell mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell