# Digest #179 2022-04-05

# Contributions

The definition states:

( n1 n2 -- d ) d is the signed product of n1 times n2.

But we have, eg a test:

T{ 2 MAX-INT M* -> MAX-INT 1 LSHIFT 0 }T

So, if we take the case that MAX-INT is 0x7FFFFFFFFFFFFFFF, this would imply and answer:

0x7FFFFFFFFFFFFFFF 0x1 (ie 0x17FFFFFFFFFFFFFFF if we combined all 128 bits together) - but that would not be a correct 128 bit representation of the answer which would be 0xFFFFFFFFFFFFFFFE 0x0 across all 128 bits.

Perhaps this is covered in the documentation? Though I cannot find it I'm afraid. But could this be clarified?