[sage-support] Re: Dimensional Analysis or Unit Conversion capability?

2009-06-24 Thread petrush

I would just like to comment about the interest in units, that I think
unit support for SAGE would be highly appreciated for a large audience
dealing with all kind of engineering/physics/etc calculations. It is
not sure that this group is following the development in SAGE today,
since it's known mainly as a mathematics tool and much of these
calculations are done in industry.

As far as I know, today the only low-entry-level tool that does this
is mathcad, which is commercial.

So, your efforts in this area will be highly appreciated, by me and
others... :)


--~--~-~--~~~---~--~~
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to 
sage-support-unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/sage-support
URLs: http://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-support] Re: EC search problem

2009-06-24 Thread John Cremona

A quick look at your output suggest that the division poly code is
getting into an infite recursion -- if so, that would explain running
out of memory.  I will look into it.

John Cremona

On Jun 23, 2:17 pm, adam mohamed  wrote:
> Hi All,
>
>  I solve the problem with the memory, thanks to William. But, now when I
> impose some strict conditions so that I have to toss say 100 times in order
> to hope for some curves to pop up,  I am getting different kind of errors. I
> have attached the code and the error message I got hereby. Maybe my code is
> too naive that why I am having this problem.
>
> What I don't get is why the code seems to do well when the conditions are
> less restrictive but once I change a little bit, them Sage is not happy!
> Maybe one has to implement Reinier algorithms in order to avoid  these kind
> of problems. Is this doable in Sage now?
>
> Best wishes,
>
> Adam
>
> On Tue, Jun 23, 2009 at 1:14 PM, John Cremona wrote:
>
>
>
> > On Jun 22, 7:59 pm, adam mohamed  wrote:
> > >  Hi,
>
> > >  Thanks for the very quick response. I will try that tomorrow. Now  I
> > > understand the problem that we met when running the same code in  a linux
> > > machine.
> > >  I am doing this search for cryptographic applications, so I am dealing
> > with
> > > primes from the size of 170 bit Length.
> > > I would like the 2-sylow of E( F_p)  to be  Z/4Z and #E( F_p) = 4*L  with
> > > L  prime.
>
> > > Reinier Broker did his PhD about EC with prescribed order and we will
> > would
> > > like to find out if his algorithms have been implemented in Sage?
>
> > Hello Adam,
>
> > No, as far as I know Sage has nothing implemented for finding curves
> > with prescribed order or structure.
>
> > John
>
> > > Regards,
>
> > > Adam
>
> > > On Mon, Jun 22, 2009 at 6:31 PM, William Stein  wrote:
>
> > > > On Mon, Jun 22, 2009 at 5:35 PM, harivola
> > > > wrote:
>
> > > > > Hi all,
>
> > > > >  I am running a small script on a windows xp machine and some time I
> > > > > am getting this error message:
> > > > >  /usr/local/sage/local/bin/sage-sage: line 348: 19954 Killed
> > > > >  python "$@"
>
> > > > You're probably running out of memory (=RAM).  Try editing the file
> > > > sage_vmx.vmx and increase the amount of RAM that is made available to
> > > > the vmware machine running Sage.  The default amount is very small.
>
> > > > > I don't get the meaning of that. By the way, does someone know an
> > > > > efficient way in Sage to search for EC with prescribed order ( I need
> > > > > curves over a big prime field with rational points of order 4 and
> > > > > cofactor 4 ). Thanks.
>
> > > > Be way more precise.  How big is "big prime field"? Do you want
> > > > #E(F_p) = 4*n with n odd?  Do you require that #E(E_p)[2] = 4 too?
>
> > > > William
>
> > > > > Best wishes
>
> > > > --
> > > > William Stein
> > > > Associate Professor of Mathematics
> > > > University of Washington
> > > >http://wstein.org
>
>
>
>  full_output.txt
> 42KViewDownload
>
>  test_ell.sage
> 2KViewDownload
--~--~-~--~~~---~--~~
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to 
sage-support-unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/sage-support
URLs: http://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-support] Re: trigonometric equation

2009-06-24 Thread kirchhoff

The only way I've found using Maxima is the one in the following .doc
file

http://www.weebly.com/uploads/1/6/3/0/1630371/trigonometric_equation2.doc

Thanks to All !

Renzo Del Fabbro
eof





On 24 Giu, 07:23, Simon King  wrote:
> Hi!
>
> On Jun 24, 7:10 am, linuxgus  wrote:
>
> > Couldn't you do something like this:
>
> > A,B,C,x=var('A,B,C,x')
> > solve([A*sin(x)+B*cos(x)+C == 0],x)
>
> > Sage responds:
> > [sin(x) == -(B*cos(x) + C)/A]
>
> Probably this is not considered a 'symbolic solution'. But I doubt
> that it is possible at all to find a symbolic solution 'x==...,
> A==..., B==...,C=...'.
>
> Cheers,
>     Simon
--~--~-~--~~~---~--~~
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to 
sage-support-unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/sage-support
URLs: http://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-support] Re: EC search problem

2009-06-24 Thread John Cremona

Here is the problem Adam.  You have a prime l which is about 2^165.
You construct random curves over the field GF(l) and count the number
of points n_1 on them.  This is possible using Sage's use of an
efficient SEA algorithm.  When the number n_1 is prime, you then ask
for all the points of order n_1 on the curve using the division_points
() function.  This is crazy!  For a start, all the points on the curve
will be returned;  that is a list of points far too big to store.  But
you will never get there anyway since the division_points() function
creates the division polynomial which has degree (n_1^2-1)/2, i.e.
about 2^330.

It's hard to make a constructive suggestion without knowing what it is
you are trying to do.  If you write that down clearly, I'll try to
help.  I found that the abelian_group() function works fine
for curves of this size (which makes me pleased, since I wrote it),
whether or not the groupis cyclic (which is
usually is), so it may be that you should first find the generator(s)
of the group and their orders, and work with that.

John

On Jun 23, 2:17 pm, adam mohamed  wrote:
> Hi All,
>
>  I solve the problem with the memory, thanks to William. But, now when I
> impose some strict conditions so that I have to toss say 100 times in order
> to hope for some curves to pop up,  I am getting different kind of errors. I
> have attached the code and the error message I got hereby. Maybe my code is
> too naive that why I am having this problem.
>
> What I don't get is why the code seems to do well when the conditions are
> less restrictive but once I change a little bit, them Sage is not happy!
> Maybe one has to implement Reinier algorithms in order to avoid  these kind
> of problems. Is this doable in Sage now?
>
> Best wishes,
>
> Adam
>
> On Tue, Jun 23, 2009 at 1:14 PM, John Cremona wrote:
>
>
>
> > On Jun 22, 7:59 pm, adam mohamed  wrote:
> > >  Hi,
>
> > >  Thanks for the very quick response. I will try that tomorrow. Now  I
> > > understand the problem that we met when running the same code in  a linux
> > > machine.
> > >  I am doing this search for cryptographic applications, so I am dealing
> > with
> > > primes from the size of 170 bit Length.
> > > I would like the 2-sylow of E( F_p)  to be  Z/4Z and #E( F_p) = 4*L  with
> > > L  prime.
>
> > > Reinier Broker did his PhD about EC with prescribed order and we will
> > would
> > > like to find out if his algorithms have been implemented in Sage?
>
> > Hello Adam,
>
> > No, as far as I know Sage has nothing implemented for finding curves
> > with prescribed order or structure.
>
> > John
>
> > > Regards,
>
> > > Adam
>
> > > On Mon, Jun 22, 2009 at 6:31 PM, William Stein  wrote:
>
> > > > On Mon, Jun 22, 2009 at 5:35 PM, harivola
> > > > wrote:
>
> > > > > Hi all,
>
> > > > >  I am running a small script on a windows xp machine and some time I
> > > > > am getting this error message:
> > > > >  /usr/local/sage/local/bin/sage-sage: line 348: 19954 Killed
> > > > >  python "$@"
>
> > > > You're probably running out of memory (=RAM).  Try editing the file
> > > > sage_vmx.vmx and increase the amount of RAM that is made available to
> > > > the vmware machine running Sage.  The default amount is very small.
>
> > > > > I don't get the meaning of that. By the way, does someone know an
> > > > > efficient way in Sage to search for EC with prescribed order ( I need
> > > > > curves over a big prime field with rational points of order 4 and
> > > > > cofactor 4 ). Thanks.
>
> > > > Be way more precise.  How big is "big prime field"? Do you want
> > > > #E(F_p) = 4*n with n odd?  Do you require that #E(E_p)[2] = 4 too?
>
> > > > William
>
> > > > > Best wishes
>
> > > > --
> > > > William Stein
> > > > Associate Professor of Mathematics
> > > > University of Washington
> > > >http://wstein.org
>
>
>
>  full_output.txt
> 42KViewDownload
>
>  test_ell.sage
> 2KViewDownload
--~--~-~--~~~---~--~~
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to 
sage-support-unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/sage-support
URLs: http://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-support] Sage computes Jacobi sums incorrectly

2009-06-24 Thread rje

Curiously, Gauss sums are defined in the reference manual

http://www.sagemath.org/doc/reference/sage/modular/dirichlet.html

but Jacobi sums are not.  Maybe that accounts for the following
problem: "jacobi_sum()" incorrectly computes Jacobi sums J(Y, Z) when
exactly one of the characters Y, Z is trivial.

Example:

sage: G=DirichletGroup(5); X=G.list(); Y=X[0]; Z=X[1];  #
Y is trivial and Z is quartic

sage: sum([Y(x)*Z(1-x) for x in IntegerModRing(5)])
 -1
# The value -1 above is the correct value of the Jacobi sum J(Y, Z).


sage: Y.jacobi_sum(Z);Z.jacobi_sum(Y)
0
0
#The 0 values above are incorrect values of J(Y, Z).

Remark: Since unlike Gauss sums mod p,  Jacobi sums mod p never
involve p-th roots of unity, the following is also a bit curious:

sage: parent(Z.jacobi_sum(Z))
Cyclotomic Field of order 20 and degree 8

rje

--~--~-~--~~~---~--~~
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to 
sage-support-unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/sage-support
URLs: http://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-support] Re: EC search problem

2009-06-24 Thread adam mohamed
 I did not know that. I tought that by the line: S = P.division_points(n_1),
I would get a non-trivial point in that case witouh having to return all the
points. Can I just chose a non-trivial random point on the curve or what is
the best to choose a point without going on whole of unecessary things?

What I am trying to  do is to find  elliptic curves over F_p with with point
of order 4. Idealy  I need E( F_p ) = Z/4Z*Z/(big prime)Z.

Best wishes,

Adam



On Wed, Jun 24, 2009 at 12:49 PM, John Cremona wrote:

>
> Here is the problem Adam.  You have a prime l which is about 2^165.
> You construct random curves over the field GF(l) and count the number
> of points n_1 on them.  This is possible using Sage's use of an
> efficient SEA algorithm.  When the number n_1 is prime, you then ask
> for all the points of order n_1 on the curve using the division_points
> () function.  This is crazy!  For a start, all the points on the curve
> will be returned;  that is a list of points far too big to store.  But
> you will never get there anyway since the division_points() function
> creates the division polynomial which has degree (n_1^2-1)/2, i.e.
> about 2^330.
>
> It's hard to make a constructive suggestion without knowing what it is
> you are trying to do.  If you write that down clearly, I'll try to
> help.  I found that the abelian_group() function works fine
> for curves of this size (which makes me pleased, since I wrote it),
> whether or not the groupis cyclic (which is
> usually is), so it may be that you should first find the generator(s)
> of the group and their orders, and work with that.
>
> John
>
> On Jun 23, 2:17 pm, adam mohamed  wrote:
> > Hi All,
> >
> >  I solve the problem with the memory, thanks to William. But, now when I
> > impose some strict conditions so that I have to toss say 100 times in
> order
> > to hope for some curves to pop up,  I am getting different kind of
> errors. I
> > have attached the code and the error message I got hereby. Maybe my code
> is
> > too naive that why I am having this problem.
> >
> > What I don't get is why the code seems to do well when the conditions are
> > less restrictive but once I change a little bit, them Sage is not happy!
> > Maybe one has to implement Reinier algorithms in order to avoid  these
> kind
> > of problems. Is this doable in Sage now?
> >
> > Best wishes,
> >
> > Adam
> >
> > On Tue, Jun 23, 2009 at 1:14 PM, John Cremona  >wrote:
> >
> >
> >
> > > On Jun 22, 7:59 pm, adam mohamed  wrote:
> > > >  Hi,
> >
> > > >  Thanks for the very quick response. I will try that tomorrow. Now  I
> > > > understand the problem that we met when running the same code in  a
> linux
> > > > machine.
> > > >  I am doing this search for cryptographic applications, so I am
> dealing
> > > with
> > > > primes from the size of 170 bit Length.
> > > > I would like the 2-sylow of E( F_p)  to be  Z/4Z and #E( F_p) = 4*L
>  with
> > > > L  prime.
> >
> > > > Reinier Broker did his PhD about EC with prescribed order and we will
> > > would
> > > > like to find out if his algorithms have been implemented in Sage?
> >
> > > Hello Adam,
> >
> > > No, as far as I know Sage has nothing implemented for finding curves
> > > with prescribed order or structure.
> >
> > > John
> >
> > > > Regards,
> >
> > > > Adam
> >
> > > > On Mon, Jun 22, 2009 at 6:31 PM, William Stein 
> wrote:
> >
> > > > > On Mon, Jun 22, 2009 at 5:35 PM, harivola<
> adam.hariv...@googlemail.com
> >
> > > > > wrote:
> >
> > > > > > Hi all,
> >
> > > > > >  I am running a small script on a windows xp machine and some
> time I
> > > > > > am getting this error message:
> > > > > >  /usr/local/sage/local/bin/sage-sage: line 348: 19954 Killed
> > > > > >  python "$@"
> >
> > > > > You're probably running out of memory (=RAM).  Try editing the file
> > > > > sage_vmx.vmx and increase the amount of RAM that is made available
> to
> > > > > the vmware machine running Sage.  The default amount is very small.
> >
> > > > > > I don't get the meaning of that. By the way, does someone know an
> > > > > > efficient way in Sage to search for EC with prescribed order ( I
> need
> > > > > > curves over a big prime field with rational points of order 4 and
> > > > > > cofactor 4 ). Thanks.
> >
> > > > > Be way more precise.  How big is "big prime field"? Do you want
> > > > > #E(F_p) = 4*n with n odd?  Do you require that #E(E_p)[2] = 4 too?
> >
> > > > > William
> >
> > > > > > Best wishes
> >
> > > > > --
> > > > > William Stein
> > > > > Associate Professor of Mathematics
> > > > > University of Washington
> > > > >http://wstein.org
> >
> >
> >
> >  full_output.txt
> > 42KViewDownload
> >
> >  test_ell.sage
> > 2KViewDownload
> >
>

--~--~-~--~~~---~--~~
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to 
sage-support-unsubscr...@googlegroups.com
For more options, visit this group at 
http://gro

[sage-support] Re: Sage computes Jacobi sums incorrectly

2009-06-24 Thread David Joyner

An easy fix:

In the code change

# If exactly one is trivial, return 0
else:
return 0

to

# If exactly one is trivial, return -1
else:
return -1

(Some docstrings need changing too.)

At first I thought it should be 0 in this case because I
confused "trivial character" with "identically equal to 1".

This is http://trac.sagemath.org/sage_trac/ticket/6393
I'll post a patch soon.

I don't understand why

sage: parent(Z.jacobi_sum(Z))
Cyclotomic Field of order 20 and degree 8

is incorrect though.

On Wed, Jun 24, 2009 at 7:00 AM, rje wrote:
>
> Curiously, Gauss sums are defined in the reference manual
>
> http://www.sagemath.org/doc/reference/sage/modular/dirichlet.html
>
> but Jacobi sums are not.  Maybe that accounts for the following
> problem: "jacobi_sum()" incorrectly computes Jacobi sums J(Y, Z) when
> exactly one of the characters Y, Z is trivial.
>
> Example:
>
> sage: G=DirichletGroup(5); X=G.list(); Y=X[0]; Z=X[1];              #
> Y is trivial and Z is quartic
>
> sage: sum([Y(x)*Z(1-x) for x in IntegerModRing(5)])
>  -1
> # The value -1 above is the correct value of the Jacobi sum J(Y, Z).
>
>
> sage: Y.jacobi_sum(Z);    Z.jacobi_sum(Y)
> 0
> 0
> #The 0 values above are incorrect values of J(Y, Z).
>
> Remark: Since unlike Gauss sums mod p,  Jacobi sums mod p never
> involve p-th roots of unity, the following is also a bit curious:
>
> sage: parent(Z.jacobi_sum(Z))
> Cyclotomic Field of order 20 and degree 8
>
> rje
>
> >
>

--~--~-~--~~~---~--~~
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to 
sage-support-unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/sage-support
URLs: http://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-support] Re: Dimensional Analysis or Unit Conversion capability?

2009-06-24 Thread Maurizio

I totally agree, but unfortunately it seems there are not so many
people involved in the development of SAGE, focused on these topics.

Thank you for your comment

Regards

Maurizio

On Jun 24, 9:26 am, petrush  wrote:
> I would just like to comment about the interest in units, that I think
> unit support for SAGE would be highly appreciated for a large audience
> dealing with all kind of engineering/physics/etc calculations. It is
> not sure that this group is following the development in SAGE today,
> since it's known mainly as a mathematics tool and much of these
> calculations are done in industry.
>
> As far as I know, today the only low-entry-level tool that does this
> is mathcad, which is commercial.
>
> So, your efforts in this area will be highly appreciated, by me and
> others... :)
--~--~-~--~~~---~--~~
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to 
sage-support-unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/sage-support
URLs: http://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-support] Re: EC search problem

2009-06-24 Thread John Cremona
2009/6/24 adam mohamed :
>
>  I did not know that. I tought that by the line: S = P.division_points(n_1),
> I would get a non-trivial point in that case witouh having to return all the
> points. Can I just chose a non-trivial random point on the curve or what is
> the best to choose a point without going on whole of unecessary things?

If you do p = E.random_point() when the curve has prime order then
with very large propbility you will get a nontrivial point, hence a
point which is certainly a generator.

When the order is 4*q with q a prime, do   G,gens = E.abelian_group();
 test G.is_cyclic() sine you want t a cyclic group;  then P=gens[0] is
a generator,  q*P will have order 4 and 4*P will have order q.

The attached version of your function does something like this;  but
of course it would be vastly better to implement a serious algorithm
instead of picking curves at random.

John

>
> What I am trying to  do is to find  elliptic curves over F_p with with point
> of order 4. Idealy  I need E( F_p ) = Z/4Z*Z/(big prime)Z.
>
> Best wishes,
>
> Adam
>
>
>
> On Wed, Jun 24, 2009 at 12:49 PM, John Cremona 
> wrote:
>>
>> Here is the problem Adam.  You have a prime l which is about 2^165.
>> You construct random curves over the field GF(l) and count the number
>> of points n_1 on them.  This is possible using Sage's use of an
>> efficient SEA algorithm.  When the number n_1 is prime, you then ask
>> for all the points of order n_1 on the curve using the division_points
>> () function.  This is crazy!  For a start, all the points on the curve
>> will be returned;  that is a list of points far too big to store.  But
>> you will never get there anyway since the division_points() function
>> creates the division polynomial which has degree (n_1^2-1)/2, i.e.
>> about 2^330.
>>
>> It's hard to make a constructive suggestion without knowing what it is
>> you are trying to do.  If you write that down clearly, I'll try to
>> help.  I found that the abelian_group() function works fine
>> for curves of this size (which makes me pleased, since I wrote it),
>> whether or not the groupis cyclic (which is
>> usually is), so it may be that you should first find the generator(s)
>> of the group and their orders, and work with that.
>>
>> John
>>
>> On Jun 23, 2:17 pm, adam mohamed  wrote:
>> > Hi All,
>> >
>> >  I solve the problem with the memory, thanks to William. But, now when I
>> > impose some strict conditions so that I have to toss say 100 times in
>> > order
>> > to hope for some curves to pop up,  I am getting different kind of
>> > errors. I
>> > have attached the code and the error message I got hereby. Maybe my code
>> > is
>> > too naive that why I am having this problem.
>> >
>> > What I don't get is why the code seems to do well when the conditions
>> > are
>> > less restrictive but once I change a little bit, them Sage is not happy!
>> > Maybe one has to implement Reinier algorithms in order to avoid  these
>> > kind
>> > of problems. Is this doable in Sage now?
>> >
>> > Best wishes,
>> >
>> > Adam
>> >
>> > On Tue, Jun 23, 2009 at 1:14 PM, John Cremona
>> > wrote:
>> >
>> >
>> >
>> > > On Jun 22, 7:59 pm, adam mohamed  wrote:
>> > > >  Hi,
>> >
>> > > >  Thanks for the very quick response. I will try that tomorrow. Now
>> > > >  I
>> > > > understand the problem that we met when running the same code in  a
>> > > > linux
>> > > > machine.
>> > > >  I am doing this search for cryptographic applications, so I am
>> > > > dealing
>> > > with
>> > > > primes from the size of 170 bit Length.
>> > > > I would like the 2-sylow of E( F_p)  to be  Z/4Z and #E( F_p) = 4*L
>> > > >  with
>> > > > L  prime.
>> >
>> > > > Reinier Broker did his PhD about EC with prescribed order and we
>> > > > will
>> > > would
>> > > > like to find out if his algorithms have been implemented in Sage?
>> >
>> > > Hello Adam,
>> >
>> > > No, as far as I know Sage has nothing implemented for finding curves
>> > > with prescribed order or structure.
>> >
>> > > John
>> >
>> > > > Regards,
>> >
>> > > > Adam
>> >
>> > > > On Mon, Jun 22, 2009 at 6:31 PM, William Stein 
>> > > > wrote:
>> >
>> > > > > On Mon, Jun 22, 2009 at 5:35 PM,
>> > > > > harivola> >
>> > > > > wrote:
>> >
>> > > > > > Hi all,
>> >
>> > > > > >  I am running a small script on a windows xp machine and some
>> > > > > > time I
>> > > > > > am getting this error message:
>> > > > > >  /usr/local/sage/local/bin/sage-sage: line 348: 19954 Killed
>> > > > > >  python "$@"
>> >
>> > > > > You're probably running out of memory (=RAM).  Try editing the
>> > > > > file
>> > > > > sage_vmx.vmx and increase the amount of RAM that is made available
>> > > > > to
>> > > > > the vmware machine running Sage.  The default amount is very
>> > > > > small.
>> >
>> > > > > > I don't get the meaning of that. By the way, does someone know
>> > > > > > an
>> > > > > > efficient way in Sage to search for EC with prescribed order ( I
>> > > > > > need
>> > > > > 

[sage-support] Re: EC search problem

2009-06-24 Thread William Stein

On Wed, Jun 24, 2009 at 1:29 PM, adam
mohamed wrote:
>
>  I did not know that. I tought that by the line: S = P.division_points(n_1),
> I would get a non-trivial point in that case witouh having to return all the
> points. Can I just chose a non-trivial random point on the curve or what is
> the best to choose a point without going on whole of unecessary things?
>
> What I am trying to  do is to find  elliptic curves over F_p with with point
> of order 4. Idealy  I need E( F_p ) = Z/4Z*Z/(big prime)Z.

For the record, it is very easy via a naive 5-line program to find a curve with

  E(F_p) = Z/4Z * Z/nZ

where n is say product of two or maybe three odd primes, and possibly
one of them is big.

William

--~--~-~--~~~---~--~~
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to 
sage-support-unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/sage-support
URLs: http://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-support] Re: EC search problem

2009-06-24 Thread adam mohamed
Dear John,

 I was also searching  for curves of cofactor one and that's what the first
part was supposed to do, I am sorry I forgot to say it in the previous
post.  Anyway I will add some lines and hope that this time things will work
well. Many thanks.

Adam



On Wed, Jun 24, 2009 at 2:13 PM, John Cremona wrote:

> 2009/6/24 adam mohamed :
> >
> >  I did not know that. I tought that by the line: S =
> P.division_points(n_1),
> > I would get a non-trivial point in that case witouh having to return all
> the
> > points. Can I just chose a non-trivial random point on the curve or what
> is
> > the best to choose a point without going on whole of unecessary things?
>
> If you do p = E.random_point() when the curve has prime order then
> with very large propbility you will get a nontrivial point, hence a
> point which is certainly a generator.
>
> When the order is 4*q with q a prime, do   G,gens = E.abelian_group();
>  test G.is_cyclic() sine you want t a cyclic group;  then P=gens[0] is
> a generator,  q*P will have order 4 and 4*P will have order q.
>
> The attached version of your function does something like this;  but
> of course it would be vastly better to implement a serious algorithm
> instead of picking curves at random.
>
> John
>
> >
> > What I am trying to  do is to find  elliptic curves over F_p with with
> point
> > of order 4. Idealy  I need E( F_p ) = Z/4Z*Z/(big prime)Z.
> >
> > Best wishes,
> >
> > Adam
> >
> >
> >
> > On Wed, Jun 24, 2009 at 12:49 PM, John Cremona 
> > wrote:
> >>
> >> Here is the problem Adam.  You have a prime l which is about 2^165.
> >> You construct random curves over the field GF(l) and count the number
> >> of points n_1 on them.  This is possible using Sage's use of an
> >> efficient SEA algorithm.  When the number n_1 is prime, you then ask
> >> for all the points of order n_1 on the curve using the division_points
> >> () function.  This is crazy!  For a start, all the points on the curve
> >> will be returned;  that is a list of points far too big to store.  But
> >> you will never get there anyway since the division_points() function
> >> creates the division polynomial which has degree (n_1^2-1)/2, i.e.
> >> about 2^330.
> >>
> >> It's hard to make a constructive suggestion without knowing what it is
> >> you are trying to do.  If you write that down clearly, I'll try to
> >> help.  I found that the abelian_group() function works fine
> >> for curves of this size (which makes me pleased, since I wrote it),
> >> whether or not the groupis cyclic (which is
> >> usually is), so it may be that you should first find the generator(s)
> >> of the group and their orders, and work with that.
> >>
> >> John
> >>
> >> On Jun 23, 2:17 pm, adam mohamed  wrote:
> >> > Hi All,
> >> >
> >> >  I solve the problem with the memory, thanks to William. But, now when
> I
> >> > impose some strict conditions so that I have to toss say 100 times in
> >> > order
> >> > to hope for some curves to pop up,  I am getting different kind of
> >> > errors. I
> >> > have attached the code and the error message I got hereby. Maybe my
> code
> >> > is
> >> > too naive that why I am having this problem.
> >> >
> >> > What I don't get is why the code seems to do well when the conditions
> >> > are
> >> > less restrictive but once I change a little bit, them Sage is not
> happy!
> >> > Maybe one has to implement Reinier algorithms in order to avoid  these
> >> > kind
> >> > of problems. Is this doable in Sage now?
> >> >
> >> > Best wishes,
> >> >
> >> > Adam
> >> >
> >> > On Tue, Jun 23, 2009 at 1:14 PM, John Cremona
> >> > wrote:
> >> >
> >> >
> >> >
> >> > > On Jun 22, 7:59 pm, adam mohamed 
> wrote:
> >> > > >  Hi,
> >> >
> >> > > >  Thanks for the very quick response. I will try that tomorrow. Now
> >> > > >  I
> >> > > > understand the problem that we met when running the same code in
>  a
> >> > > > linux
> >> > > > machine.
> >> > > >  I am doing this search for cryptographic applications, so I am
> >> > > > dealing
> >> > > with
> >> > > > primes from the size of 170 bit Length.
> >> > > > I would like the 2-sylow of E( F_p)  to be  Z/4Z and #E( F_p) =
> 4*L
> >> > > >  with
> >> > > > L  prime.
> >> >
> >> > > > Reinier Broker did his PhD about EC with prescribed order and we
> >> > > > will
> >> > > would
> >> > > > like to find out if his algorithms have been implemented in Sage?
> >> >
> >> > > Hello Adam,
> >> >
> >> > > No, as far as I know Sage has nothing implemented for finding curves
> >> > > with prescribed order or structure.
> >> >
> >> > > John
> >> >
> >> > > > Regards,
> >> >
> >> > > > Adam
> >> >
> >> > > > On Mon, Jun 22, 2009 at 6:31 PM, William Stein 
> >> > > > wrote:
> >> >
> >> > > > > On Mon, Jun 22, 2009 at 5:35 PM,
> >> > > > > harivola >> >
> >> > > > > wrote:
> >> >
> >> > > > > > Hi all,
> >> >
> >> > > > > >  I am running a small script on a windows xp machine and some
> >> > > > > > time I
> >> > > > > > am getting this error m

[sage-support] Re: Sage computes Jacobi sums incorrectly

2009-06-24 Thread rje



On Jun 24, 4:35 am, David Joyner  wrote:
...

> At first I thought it should be 0 in this case because I
> confused "trivial character" with "identically equal to 1".

That makes it surprising that T.jacobi_sum(T) was correctly defined to
be p-2
(instead of p) for the trivial character T mod p.


> I don't understand why
>
> sage: parent(Z.jacobi_sum(Z))
> Cyclotomic Field of order 20 and degree 8
>
> is incorrect though.

EVERY Jacobi sum over GF(5) lies in a much smaller cyclotomic field,
namely the field of Gaussian integers. That's because each term of the
defining sum is a Gaussian integer.   For example:

sage: parent(Z(3))
Cyclotomic Field of order 4 and degree 2

rje

--~--~-~--~~~---~--~~
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to 
sage-support-unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/sage-support
URLs: http://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-support] Re: Sage computes Jacobi sums incorrectly

2009-06-24 Thread David Joyner

On Wed, Jun 24, 2009 at 9:15 AM, rje wrote:
>
>
>
> On Jun 24, 4:35 am, David Joyner  wrote:
> ...
>
>> At first I thought it should be 0 in this case because I
>> confused "trivial character" with "identically equal to 1".
>
> That makes it surprising that T.jacobi_sum(T) was correctly defined to
> be p-2
> (instead of p) for the trivial character T mod p.


I may be mistaken in my vague recollection. I didn't write the code
but thought I remembered reading it over at one point.


>
>
>> I don't understand why
>>
>> sage: parent(Z.jacobi_sum(Z))
>> Cyclotomic Field of order 20 and degree 8
>>
>> is incorrect though.
>
> EVERY Jacobi sum over GF(5) lies in a much smaller cyclotomic field,
> namely the field of Gaussian integers. That's because each term of the
> defining sum is a Gaussian integer.   For example:
>
> sage: parent(Z(3))
> Cyclotomic Field of order 4 and degree 2


This makes sense but (a) it seems that the parent might come
from the coercion of some of the terms in the sum (which end up canceling)
so IMHO the output is not wrong, (b) there might be a way to determine
the smallest field in which Y.jacobi_sum(Z) lies but I don't know what it is,
(c) one could argue that, in any case, that issue deserves a separate ticket
(and patch).

I just posted a patch to #6393, which needs review.

>
> rje
>
> >
>

--~--~-~--~~~---~--~~
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to 
sage-support-unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/sage-support
URLs: http://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-support] Re: Dimensional Analysis or Unit Conversion capability?

2009-06-24 Thread Robert Bradshaw

On Jun 24, 2009, at 5:11 AM, Maurizio wrote:

> I totally agree, but unfortunately it seems there are not so many
> people involved in the development of SAGE, focused on these topics.

This was true of many things that are now in Sage when they started  
out. Rather than existing Sage developers focusing on new topics,  
usually what happens is people who are interested in these topics  
gets involved with the development of Sage (and the community is very  
helpful with this), though we do try to be helpful when we can.

You seem like just such a person. :)

- Robert


--~--~-~--~~~---~--~~
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to 
sage-support-unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/sage-support
URLs: http://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-support] Complexity of Groebner Basis computation

2009-06-24 Thread vpv

I have a system of 300 quadratic boolean equations in 200 variables. I
am able to find a single solution to the system using Groebner Bases
(the PolyBori implementation) in time less than 2 minutes - 1 second
for computing the Groebner Basis and 85 seconds for computing the
variety and memory around 2 GB.

My question is this: based on the above information, is it possible to
evaluate what would be the time and memory to solve a system of three
times bigger size (900 equations in 600 variables) assuming that the
algebraic structure of the big system remains similar to the small
system?

--~--~-~--~~~---~--~~
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to 
sage-support-unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/sage-support
URLs: http://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-support] Re: Is it possible to disable maxima automated simplification ?

2009-06-24 Thread Nicolas

Sorry, I thought this was clear.

when you type
sage: a=x+x+1
sage: a
2*x + 1

If I understood correctly, the simplification of x+x by 2*x is done by
maxima in the background.
I f x is here much more complicated (or if the expression itself is
complicated), the simplification process can become lengthy and even
crash maxima. So my question was : is this possible that when I ask a
in the second line above, that the answer would be x+x+1

Sorry for the trouble

Nicolas


On 23 juin, 11:19, William Stein  wrote:
> On Tue, Jun 23, 2009 at 9:40 AM, Nicolas wrote:
>
> > I am in the writing of a program that deals with rather lengthy
> > symbolic expressions involving unknown functions and differentiation.
> > When running commands like derivatives, it seems that maxima
> > automatically runs into place to simplify the obtained expressions.
> > (This is consistent with the documentation)
>
> > In  interactive sessions, this is perfectly good, but for my
> > application, it has two major problems :
> > - things are slowed down a lot because maxima tries to simplify long
> > expressions which cannot be much simplified
> > - worse : maxima often crashes which renders the whole program
> > difficult to use
>
> > My solution would be to disable maxima automated simplification but I
> > cannot figure out if this is possible in sage or how to do it (I am
> > using sage.4.0.1 on Fedora 10)
>
> Please provide a much more precise example than what you've given
> above (which is no examples at all).
>
>  -- William
--~--~-~--~~~---~--~~
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to 
sage-support-unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/sage-support
URLs: http://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-support] Re: Is it possible to disable maxima automated simplification ?

2009-06-24 Thread William Stein

On Wed, Jun 24, 2009 at 6:47 PM, Nicolas wrote:
>
> Sorry, I thought this was clear.
>
> when you type
> sage: a=x+x+1
> sage: a
> 2*x + 1
>
> If I understood correctly, the simplification of x+x by 2*x is done by
> maxima in the background.

Just to be clear, that is definitely *NOT* the case.   It used to be
the case before sage-4.0, but is not the case now.   Here's how you
can check this:

teragon:~ wstein$ sage
--
| Sage Version 4.0.2, Release Date: 2009-06-18   |
| Type notebook() for the GUI, and license() for information.|
--
sage: x + x + 1
2*x + 1
sage:
Exiting SAGE (CPU time 0m0.08s, Wall time 0m23.29s).
You have new mail in /var/mail/wstein
teragon:~ wstein$ sage
--
| Sage Version 4.0.2, Release Date: 2009-06-18   |
| Type notebook() for the GUI, and license() for information.|
--
sage: f = integrate(sin(x^2))
sage:
Exiting SAGE (CPU time 0m0.16s, Wall time 0m6.97s).
Exiting spawned Maxima process.
teragon:~ wstein$


Notice that the first time there's no "Exiting spawned Maxima process." message.

> I f x is here much more complicated (or if the expression itself is
> complicated), the simplification process can become lengthy and even
> crash maxima. So my question was : is this possible that when I ask a
> in the second line above, that the answer would be x+x+1

Note that maxima isn't involved.

> Sorry for the trouble
>
> Nicolas
>
>
> On 23 juin, 11:19, William Stein  wrote:
>> On Tue, Jun 23, 2009 at 9:40 AM, Nicolas 
>> wrote:
>>
>> > I am in the writing of a program that deals with rather lengthy
>> > symbolic expressions involving unknown functions and differentiation.
>> > When running commands like derivatives, it seems that maxima
>> > automatically runs into place to simplify the obtained expressions.
>> > (This is consistent with the documentation)
>>
>> > In  interactive sessions, this is perfectly good, but for my
>> > application, it has two major problems :
>> > - things are slowed down a lot because maxima tries to simplify long
>> > expressions which cannot be much simplified
>> > - worse : maxima often crashes which renders the whole program
>> > difficult to use
>>
>> > My solution would be to disable maxima automated simplification but I
>> > cannot figure out if this is possible in sage or how to do it (I am
>> > using sage.4.0.1 on Fedora 10)
>>
>> Please provide a much more precise example than what you've given
>> above (which is no examples at all).
>>
>>  -- William
> >
>



-- 
William Stein
Associate Professor of Mathematics
University of Washington
http://wstein.org

--~--~-~--~~~---~--~~
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to 
sage-support-unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/sage-support
URLs: http://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-support] Re: notebook doesn't open

2009-06-24 Thread kulic

Same problem here.  Windows Vista. Exact same error message.

On Jun 14, 6:16 am, William Stein  wrote:
> On Sat, Jun 13, 2009 at 10:34 PM,
>
> rcrowno...@sbcglobal.net wrote:
>
> > Did you ever get a reply?  This is my problem also.
>
> Ican'treally understand the question.  Also the person asking the
> question -- and now you -- aren't providing enough information.   What
> computer is Sage installed on?  What version?  What operating system?
> What hardware?  How was Sage installed?  Does the command line work
> fine?  Etc. etc.
>
>  -- William
>
>
>
> > On Apr 24, 9:58 pm, Yo-Yo  wrote:
> >> Hello all. hope all is well w/ all of u. anywho, when ever i try to
> >> use the sage program by writing note as it instructs me to do so, it
> >> doesn't appear to work. i am getting anerrorwhich states,
> >> "sh: cannot createnotebook.log: Permission denied echo: write erro:
> >> Brokenpipe"
>
> >> Does any one kno how to fix this problem.
>
> >> your help is dearly appreciated. Thank you all...
>
> --
> William Stein
> Associate Professor of Mathematics
> University of Washingtonhttp://wstein.org

--~--~-~--~~~---~--~~
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to 
sage-support-unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/sage-support
URLs: http://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-support] Re: parallelization

2009-06-24 Thread Robert Bradshaw

On Jun 23, 2009, at 3:09 PM, rje wrote:

> First, thanks to David and William, who have answered my questions in
> the past.
>
> I have access to NVIDIA Tesla and AMD Firestream GPGPU hardware. Are
> there any existing tools which would help facilitate porting and
> finely parallelizing the following 3-line Sage program to take
> advantage of that hardware ?

Not that I know of, but you can look at how the computation is done  
under the hood and write it in a more parallel way.

> sage: G=DirichletGroup(18900, GF(193));X=G.list();Y=X[0];
> sage: M=ModularSymbols(Y,4,sign=1);

This probably is dominated by the linear algebra over Q. Dense linear  
algebra is done using multi-modular methods, which lend themselves  
nicely to parallelization. (Not sure about sparse over Q, or even if  
this is represented sparsely, but I think it should be).

> sage: A=(M.T(19)-162).kernel()

Computing the Hecke Matrix is done via a large sum, which could be  
distributed among several processes.

For both of these steps, it's easy to see how to do it in theory, but  
it'll be some manual work to actually implement it. Would be  
interesting to have as part of Sage though.

- Robert

--~--~-~--~~~---~--~~
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to 
sage-support-unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/sage-support
URLs: http://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-support] Re: Complexity of Groebner Basis computation

2009-06-24 Thread Marshall Hampton

I don't think so, but I never work over the boolean ring so I am not
sure if there is different theory for that.  In general I think
Groebner basis computations have nasty complexity (doubly exponential
worst case?) in the number of variables and degree, so tripling the
number of variables potentially could really blow things up.  Over QQ,
which is what I work with, I definitely see that sort of blow-up in
practice.

-M. Hampton

On Jun 24, 10:20 am, vpv  wrote:
> I have a system of 300 quadratic boolean equations in 200 variables. I
> am able to find a single solution to the system using Groebner Bases
> (the PolyBori implementation) in time less than 2 minutes - 1 second
> for computing the Groebner Basis and 85 seconds for computing the
> variety and memory around 2 GB.
>
> My question is this: based on the above information, is it possible to
> evaluate what would be the time and memory to solve a system of three
> times bigger size (900 equations in 600 variables) assuming that the
> algebraic structure of the big system remains similar to the small
> system?
--~--~-~--~~~---~--~~
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to 
sage-support-unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/sage-support
URLs: http://www.sagemath.org
-~--~~~~--~~--~--~---



[sage-support] Re: Is it possible to disable maxima automated simplification ?

2009-06-24 Thread Robert Bradshaw

On Jun 24, 2009, at 10:05 AM, William Stein wrote:

>
> On Wed, Jun 24, 2009 at 6:47 PM,  
> Nicolas wrote:
>>
>> Sorry, I thought this was clear.
>>
>> when you type
>> sage: a=x+x+1
>> sage: a
>> 2*x + 1
>>
>> If I understood correctly, the simplification of x+x by 2*x is  
>> done by
>> maxima in the background.
>
> Just to be clear, that is definitely *NOT* the case.   It used to be
> the case before sage-4.0, but is not the case now.   Here's how you
> can check this:
>
> teragon:~ wstein$ sage
> --
> | Sage Version 4.0.2, Release Date: 2009-06-18   |
> | Type notebook() for the GUI, and license() for information.|
> --
> sage: x + x + 1
> 2*x + 1
> sage:
> Exiting SAGE (CPU time 0m0.08s, Wall time 0m23.29s).
>

Pynac does perform some simplifications automatically, e.g. the x+x - 
 > 2*x. You can read about it here http://www.ginac.de/tutorial/ 
Automatic-evaluation.html . These are nearly impossible to avoid (I  
tried to do so for a while when working on powering) but shouldn't  
ever do anything expensive.

As for simplifying an integral, I'm not sure if it's simplified  
internally by maxima as part of the integration process, or when the  
result is printed. Have you tried assigning the result to a  
variable?  That would determine if we can do something about it.

- Robert
  

--~--~-~--~~~---~--~~
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to 
sage-support-unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/sage-support
URLs: http://www.sagemath.org
-~--~~~~--~~--~--~---