Loïc Grenié on Wed, 23 Oct 2013 23:44:04 +0200 |
[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]
Re: parallel pari: parfirst |
2013/10/23 Bill Allombert <Bill.Allombert@math.u-bordeaux1.fr>: > Hello PARI developers, > > I am experimenting with a new parallel primitive which is a kind of > parapply with early return: > > ?? parfirst(f, x, {&b}): > > Return the smallest index i such that f(x[i]) is non zero, or 0 if none. If > present, b is to f(x[i]). > > One example program: > > inline(chkell); > chkell(p)=a->my(E=ellinit([1,a],p));isprime(ellcard(E)); > ellp(p)=parfirst(chkell(p),[1..10000]); > > ellp(p) returns the smallest a>=1 such that the curve y^2=x^3+x+a has prime > order over F_p. > > Suggestions for the name and/or the interface ? > > The requirement of an explicit vector for x is a bit burdensome, since > we might like x to be unbounded (i.e. infinite). C'est là que mes itérateurs reprennent du poil de la bête: I = iterlinearinit(1); [iterlinearinit(a,b,s) itèrerait de a à b par pas de s] inline(chkell); chkell(p)=a->my(E=ellinit([1,a],p));isprime(ellcard(E)); ellp(p)=parfirst(chkell(p),I); Loïc, qui ne renonce pas facilement à ses idées géniales.