commons-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Gilles (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (MATH-1322) Negative integer seed for MersenneTwister is not working.
Date Tue, 09 Feb 2016 16:22:18 GMT

    [ https://issues.apache.org/jira/browse/MATH-1322?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15139141#comment-15139141
] 

Gilles commented on MATH-1322:
------------------------------

With the code you wrote above:
{code}
MersenneTwister rng = new MersenneTwister();
rng.setSeed((int) -1);
// Without patch, "-931718226" is output.
// After applying patch, "419326371" is output.
System.out.println(rng.nextInt());
{code}
what is the output of
{code}
rng.setSeed((long) -1);
{code}
# in the current  code and
# with the patch applied

?


> Negative integer seed for MersenneTwister is not working.
> ---------------------------------------------------------
>
>                 Key: MATH-1322
>                 URL: https://issues.apache.org/jira/browse/MATH-1322
>             Project: Commons Math
>          Issue Type: Bug
>    Affects Versions: 3.6
>            Reporter: Morikawa Joe
>              Labels: patch
>         Attachments: MersenneTwister.patch
>
>
> MersenneTwister.setSeed(int seed) has a bug.
> If seed is negative, longMT also becomes negative.
> First 32 bits are filled by 0xFFFFFFFF.
> But it should be positive. First 32 bits should be filled by 0x00000000.
> Ex) Integer -1 is 0xffffffff. 
> Long -1 is 0xffffffffffffffff.
> Long 0xffffffff is 4294967295.
> I created simple patch. 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message