If I read your code correctly, when you have a primitive element g
then you call discrete_log p times on g+i for i mod p.  Surely to
compute a complete table of discrete logs you should go the other way
and set the g^k 'th element of the array to k-g mod p (or something
like that)?

John

On 21 April 2014 04:58, Jan Medina <[email protected]> wrote:
> well i use this algorithm Bose_Chowla with the same parameters, this
> algorithm used 2 hours and a half to find this set. So what is the problem
> whit the other algorithm?
> def Bose_Chowla(p,h):
>     if is_prime(p):
>         F.<x>=GF(p^h,name='x')
>         g=random_primitive(p,h);
>         a=[discrete_log(g+i,g) for i in range(p)];
>         aP=Permutations(a).random_element();
>
>         return aP
>     else:
>         print 'P debe ser primo'
>
> El domingo, 20 de abril de 2014 22:47:35 UTC-5, William escribió:
>>
>> I just realized this is from another thread.  Anyway, I tried running
>> it, but killed it after it had used 22GB of RAM.
>>
>> 5848 8399046   39  19 21.6g  20g  208 R  100 52.4   1:42.91 python
>>
>> So you're doing something that exhausts all your RAM, which can lead
>> to a segfault.
>>
>> William
>>
>> On Sun, Apr 20, 2014 at 8:39 PM, William Stein <[email protected]> wrote:
>> > On Sun, Apr 20, 2014 at 8:36 PM, Jan Medina <[email protected]> wrote:
>> >> I have this error when i runnig this algorithm
>> >>
>> >> def Trujillo_Gomez(p,h):
>> >>     if is_prime(p):
>> >>         F.<x>=GF(p^(h-1),name='x')
>> >>         g=random_primitive(p,h-1);
>> >>         s=p^(h-1)
>> >>         for i in range(p):
>> >>             a1=discrete_log(g+i,g)
>> >>             a2=a1-i
>> >>             a3=s*a1+i
>> >>             A2=A2+[ZZ(mod(a1,(p*(s-1))))]
>> >>         aP=Permutations(A2).random_element()
>> >>         return aP
>> >>     else:
>> >>         print 'P debe ser primo'
>> >>
>> >> for p=409 y h=17.
>> >>
>> >> Is it a bug?
>> >
>> > I get the error
>> >
>> >
>> >    NameError: global name 'random_primitive' is not defined
>> >
>> > What is random_primitive?  Is that defined elsewhere in your code?  If
>> > not, exactly what version of Sage are you using, and on exactly which
>> > operating system, etc.?  Did you install a binary (which, exactly?) or
>> > build from source?
>> >
>> > Thanks,
>> >
>> > William
>> >
>> >
>> >>
>> >> --
>> >> You received this message because you are subscribed to the Google
>> >> Groups
>> >> "sage-support" group.
>> >> To unsubscribe from this group and stop receiving emails from it, send
>> >> an
>> >> email to [email protected].
>> >> To post to this group, send email to [email protected].
>> >> Visit this group at http://groups.google.com/group/sage-support.
>> >> For more options, visit https://groups.google.com/d/optout.
>> >
>> >
>> >
>> > --
>> > William Stein
>> > Professor of Mathematics
>> > University of Washington
>> > http://wstein.org
>>
>>
>>
>> --
>> William Stein
>> Professor of Mathematics
>> University of Washington
>> http://wstein.org
>
> --
> You received this message because you are subscribed to the Google Groups
> "sage-support" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To post to this group, send email to [email protected].
> Visit this group at http://groups.google.com/group/sage-support.
> For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
"sage-support" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/sage-support.
For more options, visit https://groups.google.com/d/optout.

Reply via email to