[sage-devel] gcd for multivariate polynomials over numberfields using pari
As far as I know singular does not have gcd for multivariate polynomials over numberfields (Martin: is this true?) but it seems pari does. Is there a reason why this functionality is not exported to sage (or is it)? I did a bit of timing and it does not seem to be particularly slow. I tried gp.gcd but I don't understand what it is supposed to do. It seems to be undocumented (I did not look in the source yet). sage: Q=NumberField(t^2+1,'s') sage: s=Q.gen() sage: K=Q['p','q'] sage: p,q=K.gens() sage: gp.gcd((p+s*q)^3,(p+s*q)^5) 1 == wrong!! I don't know pari, but after some trying I think the equivalent direct command is sage: gp('gcd((p+Mod(s,s^2+1)*q)^5,(p+Mod(s,s^2+1)*q)^3)') p^3 + Mod(3*q*s, s^2 + 1)*p^2 + Mod(-3*q^2, s^2 + 1)*p + Mod(-q^3*s, s^2 + 1) which produces slightly odd but sensible looking output (I tried to coerce it back into K but that didn't work :-() Michel --~--~-~--~~~---~--~~ To post to this group, send email to sage-devel@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/sage-devel URLs: http://sage.scipy.org/sage/ and http://modular.math.washington.edu/sage/ -~--~~~~--~~--~--~---
[sage-devel] Re: gcd for multivariate polynomials over numberfields using pari
and Q(a). I am not exactly sure what is meant by the latter but I assume its a one dimensional algebraic extension of QQ. Yep you are right! Just tried it. I assume you have no intention implementing this in libsingular...? Did you keep the old singular implementation of MPolynomials in the source? Perhaps I can enhance it so that it so that it does gcd over number fields. Michel --~--~-~--~~~---~--~~ To post to this group, send email to sage-devel@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/sage-devel URLs: http://sage.scipy.org/sage/ and http://modular.math.washington.edu/sage/ -~--~~~~--~~--~--~---
[sage-devel] Re: gcd for multivariate polynomials over numberfields using pari
On Friday 18 May 2007 12:06, Michel wrote: As far as I know singular does not have gcd for multivariate polynomials over numberfields (Martin: is this true?) The SINGULAR source states that they only support GCDs over: Q, Fp, Fp(a), and Q(a). I am not exactly sure what is meant by the latter but I assume its a one dimensional algebraic extension of QQ. but it seems pari does. Is there a reason why this functionality is not exported to sage (or is it)? Probably because no one got around writing this code yet. I tried gp.gcd but I don't understand what it is supposed to do. It seems to be undocumented (I did not look in the source yet). You just witnessed the true power of SAGE :-). Every gp function is available in SAGE through the expect interface. That is, if you know the pari code for a gcd over number fields you can use than in SAGE. Still, this should be a convenient method of the appropriate class. Martin -- name: Martin Albrecht _pgp: http://pgp.mit.edu:11371/pks/lookup?op=getsearch=0x8EF0DC99 _www: http://www.informatik.uni-bremen.de/~malb _jab: [EMAIL PROTECTED] --~--~-~--~~~---~--~~ To post to this group, send email to sage-devel@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/sage-devel URLs: http://sage.scipy.org/sage/ and http://modular.math.washington.edu/sage/ -~--~~~~--~~--~--~---
[sage-devel] Re: Patch for matrix slicing
On 5/17/07, Nick Alexander [EMAIL PROTECTED] wrote: While I'm here, what's the good way to get a column slice? Say the moral equivalent of matrix(...)[,:4], which gets the first four columns? Nick -- nice patch. It will be in sage-2.5.1. And, I agree that calling getitem on range then using the result is a good way of reducing the possibility of bugs and should be used elsewhere instead of us trying to implement getslice. Nick -- William Stein Associate Professor of Mathematics University of Washington http://www.williamstein.org --~--~-~--~~~---~--~~ To post to this group, send email to sage-devel@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/sage-devel URLs: http://sage.scipy.org/sage/ and http://modular.math.washington.edu/sage/ -~--~~~~--~~--~--~---
[sage-devel] Re: SAGE polynomail algebra problems
I am running the new libsingular and I get the following sage: R = PolynomialRing(QQ, ['a','b','c','d','e'], 5) sage: K = R.fraction_field() sage: a,b,c,d,e = K.gens() sage: sage: ig = 12*a*e-3*b*d+c^2 sage: jg = 72*a*c*e+9*b*c*d-27*a*d^2-27*e*b^2-2*c^3 sage: hg = 8*a*c-3*b^2 sage: deltag = 4*ig^3-jg^2 sage: sage: Ky.y = PolynomialRing(K,'y') sage: phipoly = y^3-3*ig*y+jg --- type 'exceptions.TypeError' Traceback (most recent call last) /home/vdbergh/sage-2.5/ipython console in module() /home/vdbergh/sage-2.5/element.pyx in element.ModuleElement.__add__() /home/vdbergh/sage-2.5/element.pyx in element.bin_op_c() type 'exceptions.TypeError': unsupported operand parent(s) for '+': 'Univariat e Polynomial Ring in y over Fraction Field of Polynomial Ring in a, b, c, d, e o ver Rational Field' and 'Fraction Field of Polynomial Ring in a, b, c, d, e over Rational Field' At least it tells you exactly where the error is. I tried to reproduce it on a simple example but could not so far. Michel On May 17, 5:47 pm, William Stein [EMAIL PROTECTED] wrote: On 5/17/07, Prof. J. E. Cremona [EMAIL PROTECTED] wrote: Problem: when executing the following, the last line takes forever and had to be killed: R = PolynomialRing(QQ, ['a','b','c','d','e'], 5) K = R.fraction_field() a,b,c,d,e = K.gens() ig = 12*a*e-3*b*d+c^2 jg = 72*a*c*e+9*b*c*d-27*a*d^2-27*e*b^2-2*c^3 hg = 8*a*c-3*b^2 deltag = 4*ig^3-jg^2 Ky.y = PolynomialRing(K,'y') phipoly = y^3-3*ig*y+jg What am I missing? Nothing -- You have found a subtle bug in SAGE's coercion code. If you make the coercion that is going on in the last line very explicit, then the above line works, e.g., this works (note that I've used some more compact notation at the beginning, but it's equivalent to what you wrote): {{{ R.a,b,c,d,e = QQ[] K = R.fraction_field() a,b,c,d,e = K.gens() ig = 12*a*e-3*b*d+c^2 jg = 72*a*c*e+9*b*c*d-27*a*d^2-27*e*b^2-2*c^3 hg = 8*a*c-3*b^2 deltag = 4*ig^3-jg^2 }}} {{{ Ky.y = PolynomialRing(K,'y') phipoly = y^3-3*ig*y+Ky([jg]) phipoly /// y^3 + (-3*c^2 + 9*b*d - 36*a*e)*y + -2*c^3 + 9*b*c*d - 27*b^2*e - 27*a*d^2 + 72*a*c*e }}} The difference is that I put Ky([jg]) explicitly instead of jg. Whatever is causing this is a serious bug, and I hope somebody fixes it soon (or that I do). It's trac #365: http://www.sagemath.org:9002/sage_trac/ticket/365 John -- Prof. J. E. Cremona | University of Nottingham| Tel.: +44-115-9514920 School of Mathematical Sciences | Fax: +44-115-9514951 University Park | Email: [EMAIL PROTECTED] Nottingham NG7 2RD, UK | This message has been checked for viruses but the contents of an attachment may still contain software viruses, which could damage your computer system: you are advised to perform your own checks. Email communications with the University of Nottingham may be monitored as permitted by UK legislation. -- William Stein Associate Professor of Mathematics University of Washingtonhttp://www.williamstein.org --~--~-~--~~~---~--~~ To post to this group, send email to sage-devel@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/sage-devel URLs: http://sage.scipy.org/sage/ and http://modular.math.washington.edu/sage/ -~--~~~~--~~--~--~---
[sage-devel] Re: SAGE polynomail algebra problems
I could reproduce it! sage: Q=FractionField(QQ['x']) sage: x=Q.gens() sage: V=Q['z'] sage: z=V.gen() sage: x+z type 'exceptions.TypeError': unsupported operand parent(s) for '+': 'type 'tuple'' and 'Univariate Polynomial Ring in z over Fraction Field of Univariate Polynomial Ring in x over Rational Field' A missing automatic coercion! Should be trivial to fix now. Michel On May 17, 5:47 pm, William Stein [EMAIL PROTECTED] wrote: On 5/17/07, Prof. J. E. Cremona [EMAIL PROTECTED] wrote: Problem: when executing the following, the last line takes forever and had to be killed: R = PolynomialRing(QQ, ['a','b','c','d','e'], 5) K = R.fraction_field() a,b,c,d,e = K.gens() ig = 12*a*e-3*b*d+c^2 jg = 72*a*c*e+9*b*c*d-27*a*d^2-27*e*b^2-2*c^3 hg = 8*a*c-3*b^2 deltag = 4*ig^3-jg^2 Ky.y = PolynomialRing(K,'y') phipoly = y^3-3*ig*y+jg What am I missing? Nothing -- You have found a subtle bug in SAGE's coercion code. If you make the coercion that is going on in the last line very explicit, then the above line works, e.g., this works (note that I've used some more compact notation at the beginning, but it's equivalent to what you wrote): {{{ R.a,b,c,d,e = QQ[] K = R.fraction_field() a,b,c,d,e = K.gens() ig = 12*a*e-3*b*d+c^2 jg = 72*a*c*e+9*b*c*d-27*a*d^2-27*e*b^2-2*c^3 hg = 8*a*c-3*b^2 deltag = 4*ig^3-jg^2 }}} {{{ Ky.y = PolynomialRing(K,'y') phipoly = y^3-3*ig*y+Ky([jg]) phipoly /// y^3 + (-3*c^2 + 9*b*d - 36*a*e)*y + -2*c^3 + 9*b*c*d - 27*b^2*e - 27*a*d^2 + 72*a*c*e }}} The difference is that I put Ky([jg]) explicitly instead of jg. Whatever is causing this is a serious bug, and I hope somebody fixes it soon (or that I do). It's trac #365: http://www.sagemath.org:9002/sage_trac/ticket/365 John -- Prof. J. E. Cremona | University of Nottingham| Tel.: +44-115-9514920 School of Mathematical Sciences | Fax: +44-115-9514951 University Park | Email: [EMAIL PROTECTED] Nottingham NG7 2RD, UK | This message has been checked for viruses but the contents of an attachment may still contain software viruses, which could damage your computer system: you are advised to perform your own checks. Email communications with the University of Nottingham may be monitored as permitted by UK legislation. -- William Stein Associate Professor of Mathematics University of Washingtonhttp://www.williamstein.org --~--~-~--~~~---~--~~ To post to this group, send email to sage-devel@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/sage-devel URLs: http://sage.scipy.org/sage/ and http://modular.math.washington.edu/sage/ -~--~~~~--~~--~--~---
[sage-devel] Re: SAGE polynomail algebra problems
Now I could reproduce it. sage: Q=FractionField(QQ['x','y']) sage: x,y=Q.gens() sage: V=Q['z'] sage: z=V.gen() sage: x+z --- type 'exceptions.TypeError' Traceback (most recent call last) /home/vdbergh/sage-2.5/ipython console in module() /home/vdbergh/sage-2.5/element.pyx in element.ModuleElement.__add__() /home/vdbergh/sage-2.5/element.pyx in element.bin_op_c() type 'exceptions.TypeError': unsupported operand parent(s) for '+': 'Fraction Field of Polynomial Ring in x, y over Rational Field' and 'Univariate Polynomial Ring in z over Fraction Field of Polynomial Ring in x, y over Rational Field' A missing automatic coercion. Should be trivial to fix. Michel On May 18, 4:22 pm, Michel [EMAIL PROTECTED] wrote: I am running the new libsingular and I get the following sage: R = PolynomialRing(QQ, ['a','b','c','d','e'], 5) sage: K = R.fraction_field() sage: a,b,c,d,e = K.gens() sage: sage: ig = 12*a*e-3*b*d+c^2 sage: jg = 72*a*c*e+9*b*c*d-27*a*d^2-27*e*b^2-2*c^3 sage: hg = 8*a*c-3*b^2 sage: deltag = 4*ig^3-jg^2 sage: sage: Ky.y = PolynomialRing(K,'y') sage: phipoly = y^3-3*ig*y+jg --- type 'exceptions.TypeError' Traceback (most recent call last) /home/vdbergh/sage-2.5/ipython console in module() /home/vdbergh/sage-2.5/element.pyx in element.ModuleElement.__add__() /home/vdbergh/sage-2.5/element.pyx in element.bin_op_c() type 'exceptions.TypeError': unsupported operand parent(s) for '+': 'Univariat e Polynomial Ring in y over Fraction Field of Polynomial Ring in a, b, c, d, e o ver Rational Field' and 'Fraction Field of Polynomial Ring in a, b, c, d, e over Rational Field' At least it tells you exactly where the error is. I tried to reproduce it on a simple example but could not so far. Michel On May 17, 5:47 pm, William Stein [EMAIL PROTECTED] wrote: On 5/17/07, Prof. J. E. Cremona [EMAIL PROTECTED] wrote: Problem: when executing the following, the last line takes forever and had to be killed: R = PolynomialRing(QQ, ['a','b','c','d','e'], 5) K = R.fraction_field() a,b,c,d,e = K.gens() ig = 12*a*e-3*b*d+c^2 jg = 72*a*c*e+9*b*c*d-27*a*d^2-27*e*b^2-2*c^3 hg = 8*a*c-3*b^2 deltag = 4*ig^3-jg^2 Ky.y = PolynomialRing(K,'y') phipoly = y^3-3*ig*y+jg What am I missing? Nothing -- You have found a subtle bug in SAGE's coercion code. If you make the coercion that is going on in the last line very explicit, then the above line works, e.g., this works (note that I've used some more compact notation at the beginning, but it's equivalent to what you wrote): {{{ R.a,b,c,d,e = QQ[] K = R.fraction_field() a,b,c,d,e = K.gens() ig = 12*a*e-3*b*d+c^2 jg = 72*a*c*e+9*b*c*d-27*a*d^2-27*e*b^2-2*c^3 hg = 8*a*c-3*b^2 deltag = 4*ig^3-jg^2 }}} {{{ Ky.y = PolynomialRing(K,'y') phipoly = y^3-3*ig*y+Ky([jg]) phipoly /// y^3 + (-3*c^2 + 9*b*d - 36*a*e)*y + -2*c^3 + 9*b*c*d - 27*b^2*e - 27*a*d^2 + 72*a*c*e }}} The difference is that I put Ky([jg]) explicitly instead of jg. Whatever is causing this is a serious bug, and I hope somebody fixes it soon (or that I do). It's trac #365: http://www.sagemath.org:9002/sage_trac/ticket/365 John -- Prof. J. E. Cremona | University of Nottingham| Tel.: +44-115-9514920 School of Mathematical Sciences | Fax: +44-115-9514951 University Park | Email: [EMAIL PROTECTED] Nottingham NG7 2RD, UK | This message has been checked for viruses but the contents of an attachment may still contain software viruses, which could damage your computer system: you are advised to perform your own checks. Email communications with the University of Nottingham may be monitored as permitted by UK legislation. -- William Stein Associate Professor of Mathematics University of Washingtonhttp://www.williamstein.org --~--~-~--~~~---~--~~ To post to this group, send email to sage-devel@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/sage-devel URLs: http://sage.scipy.org/sage/ and http://modular.math.washington.edu/sage/ -~--~~~~--~~--~--~---
[sage-devel] Re: SAGE polynomail algebra problems
Sorry I sent the wrong counterexample:-) I deleted the post but you were too fast. Now I submitted the correct example. Michel On May 18, 4:33 pm, Martin Albrecht [EMAIL PROTECTED] wrote: On Friday 18 May 2007 16:25, Michel wrote: sage: Q=FractionField(QQ['x']) sage: x=Q.gens() sage: V=Q['z'] sage: z=V.gen() sage: x+z Thats something different. x is a tuple as gens (note the plural) returns a tuple. Martin -- name: Martin Albrecht _pgp:http://pgp.mit.edu:11371/pks/lookup?op=getsearch=0x8EF0DC99 _www:http://www.informatik.uni-bremen.de/~malb _jab: [EMAIL PROTECTED] --~--~-~--~~~---~--~~ To post to this group, send email to sage-devel@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/sage-devel URLs: http://sage.scipy.org/sage/ and http://modular.math.washington.edu/sage/ -~--~~~~--~~--~--~---
[sage-devel] Re: More polynomial algebra problems!
On May 18, 2007, at 10:43 AM, Michel wrote: Look at sage: Q=FractionField(QQ['x']) sage: x=Q.gen() sage: V=Q['z'] sage: z=V.gen() sage: x+z 2*z Any explanations for this? Basically -- this is my point of view only -- the semantics of automatic coercions in SAGE are not as well worked out as they could be, and to the extent that they are well worked out, they are often not correctly implemented. The kind of thing you are pointing out happens all over the place. This is a problem that many developers are keen to address, and a number of us are planning to devote considerable time to it at the next SAGE developer's workshop in mid-June. My guess, without looking at the code, is that it's probably not worth trying to fix the particular problem you noted, it would probably end up being a band-aid solution to a much deeper problem. david --~--~-~--~~~---~--~~ To post to this group, send email to sage-devel@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/sage-devel URLs: http://sage.scipy.org/sage/ and http://modular.math.washington.edu/sage/ -~--~~~~--~~--~--~---
[sage-devel] Re: More polynomial algebra problems!
On 5/18/07, David Harvey [EMAIL PROTECTED] wrote: On May 18, 2007, at 10:43 AM, Michel wrote: Look at sage: Q=FractionField(QQ['x']) sage: x=Q.gen() sage: V=Q['z'] sage: z=V.gen() sage: x+z 2*z Any explanations for this? The attached patch fixes this. The problem was that the method for coercing into polynomial rings if at all possible didn't handle optimally the case when the element being coerced in was already in the base ring of the polynomial ring. The canonical coercion code, on the other hand, assumed that this case was handled correctly. There have recently been a few comments that some abstract nonsense is going to magically fix coercion in SAGE. I am pessimistic. The commutative diagram proposal is going to make SAGE more powerful, flexible, and *more complicated*. Automatic coercion in the context of a complicated system of types is, well, complicated. It takes a lot of work, examples, debugging, etc., to get it right. It doesn't matter how good the design is: when you have hundreds of different rings and you want to automatically do coercions and arithmetic with them, there is going to be a lot of nontrivial code that implements said coercions, and it won't work perfectly the first time. -- William Stein Associate Professor of Mathematics University of Washington http://www.williamstein.org --~--~-~--~~~---~--~~ To post to this group, send email to sage-devel@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/sage-devel URLs: http://sage.scipy.org/sage/ and http://modular.math.washington.edu/sage/ -~--~~~~--~~--~--~--- 4432.patch Description: Binary data
[sage-devel] Re: More polynomial algebra problems!
On May 18, 2007, at 11:40 AM, William Stein wrote: There have recently been a few comments that some abstract nonsense is going to magically fix coercion in SAGE. I am pessimistic. This must be the first time I am more optimistic than William about something related to SAGE :-) The commutative diagram proposal is going to make SAGE more powerful, flexible, and *more complicated*. I think the point of introducing the abstract nonsense is to make things *simpler*. If it doesn't do that, then I agree it will most likely fail. But I guess we'll be able to discuss this more easily at SD4. david --~--~-~--~~~---~--~~ To post to this group, send email to sage-devel@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/sage-devel URLs: http://sage.scipy.org/sage/ and http://modular.math.washington.edu/sage/ -~--~~~~--~~--~--~---
[sage-devel] Re: More polynomial algebra problems!
On 5/18/07, David Harvey [EMAIL PROTECTED] wrote: On May 18, 2007, at 11:40 AM, William Stein wrote: There have recently been a few comments that some abstract nonsense is going to magically fix coercion in SAGE. I am pessimistic. This must be the first time I am more optimistic than William about something related to SAGE :-) :-) The commutative diagram proposal is going to make SAGE more powerful, flexible, and *more complicated*. I think the point of introducing the abstract nonsense is to make things *simpler*. If it doesn't do that, then I agree it will most likely fail. Wait -- I don't think it is going to fail! I really really like it. I just don't think it will be easy, a magic fix, or anything else like that. I think it won't make what we have now (much) simpler; but what it will do is make much more sophisticated canonical coercions possible, which the current system doesn't support. I very much want to see such more sophisticated coercions be supported in the future. Robert Bradshaw and I spent a lot of time thinking up almost the same system as David Roe coincidentally on the same afternoon, so the time is right. I just don't think this is going to make what we already do easier. But that's no reason not to do it. -- William Stein Associate Professor of Mathematics University of Washington http://www.williamstein.org --~--~-~--~~~---~--~~ To post to this group, send email to sage-devel@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/sage-devel URLs: http://sage.scipy.org/sage/ and http://modular.math.washington.edu/sage/ -~--~~~~--~~--~--~---
[sage-devel] Re: automatic sage upgrade notification?
Pop-up windows about upgrades are really annoying. But a simple text output of the sort described, that doesn't ask for any input, would be a good idea I think. -M.Hampton On May 18, 11:18 am, William Stein [EMAIL PROTECTED] wrote: Hi, This is a discussion of update/upgrade notification for SAGE for normal users. Feel free to read it and share your thoughts. -- Forwarded message -- Another suggestion I have, automatic notification of major new version releases: Say once a week, when you start SAGE, it checks with the canonical SAGE server on the Net and if a significant version (like 2.5) has been released, it just says something like A newer version of SAGE with software enhancements, version 2.5, is now available. If you have administrative privileges for SAGE you may wish to install it with the command sage -upgrade from the command line. Note that this may take some time, depending on the speed of your computer and network connection. Maybe. I'll running it by sage-devel. One of the things I hate most about software is stupid frickin' automatic notifications about upgrades... They drive me crazy. Especially Adobe Acrobat's. Otherwise, people may get way behind without ever knowing it, and run into problems/difficulties/errors/frustrations you've already long since solved. I don't know how often, for example, I see people still running Firefox 1.0 or 1.5, both insecure and long since superceded, with no idea that there's a newer, better version available. And, on the SysAdmin side, the mathematicians bugging the SysAdmins due to the upgrade message will get the SysAdmins to install the newer version, which they otherwise may have no clue was even released. Of course, you've got to be real sure that the -upgrade works real well! Arthur Maybe. I'll running it by sage-devel. One of the things I hate most about software is stupid frickin' automatic notifications about upgrades... They drive me crazy. Especially Adobe Acrobat's. You don't want to make it too obtrusive, but if someone's not on Sage- announce (or one of the other mailing lists) which I assume most normal users aren't, True. or you don't go to sagmath.org (which I assume most wouldn't much if they're just a normal user) how would someone ever know if a new and improved version came out? They wouldn't, unless they type upgrade(). I mean, I'm in the new and improved software business, mathematicians just want to do math... they mostly don't want to screw around with computers so mostly don't pay much attention to software at all, unless something breaks, and often not so much even then. Adobe Acrobat's upgrade notifications suck. But so do Adobe's installs, especially their network installs. *Don't* ever make it an automatic upgrade, though. I hate those. Those massively suck. -- William Stein Associate Professor of Mathematics University of Washingtonhttp://www.williamstein.org --~--~-~--~~~---~--~~ To post to this group, send email to sage-devel@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/sage-devel URLs: http://sage.scipy.org/sage/ and http://modular.math.washington.edu/sage/ -~--~~~~--~~--~--~---
[sage-devel] Re: automatic sage upgrade notification?
William Stein [EMAIL PROTECTED] writes: Hi, This is a discussion of update/upgrade notification for SAGE for normal users. Feel free to read it and share your thoughts. -- Forwarded message -- Another suggestion I have, automatic notification of major new version releases: Say once a week, when you start SAGE, it checks with the canonical SAGE server on the Net and if a significant version (like 2.5) has been released, it just says something like A newer version of SAGE with software enhancements, version 2.5, is now available. If you have administrative privileges for SAGE you may wish to install it with the command sage -upgrade from the command line. Note that this may take some time, depending on the speed of your computer and network connection. Maybe. I'll running it by sage-devel. One of the things I hate most about software is stupid frickin' automatic notifications about upgrades... They drive me crazy. Especially Adobe Acrobat's. One way to make notifications less obtrusive is to make them omnipresent. That is, the banner could always read -- | SAGE Version 2.5.alpha2, Release Date: 2007-05-02 | Latest version is 2.5.alpha3, type upgrade() to upgrade. | Type notebook() for the GUI, and license() for information.| -- While we're at it, maybe the banner should also tell you if you're running a vanilla sage or a hacked sage and maybe what the last hg tag was. Nick --~--~-~--~~~---~--~~ To post to this group, send email to sage-devel@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/sage-devel URLs: http://sage.scipy.org/sage/ and http://modular.math.washington.edu/sage/ -~--~~~~--~~--~--~---
[sage-devel] Re: automatic sage upgrade notification?
How would this work? If sagemath was down or there wasn't a net connection would there be a weird error? Would it confuse users who could not update (eg, students using the SAGE notebook in a lab)? On 5/18/07, Nick Alexander [EMAIL PROTECTED] wrote: William Stein [EMAIL PROTECTED] writes: Hi, This is a discussion of update/upgrade notification for SAGE for normal users. Feel free to read it and share your thoughts. -- Forwarded message -- Another suggestion I have, automatic notification of major new version releases: Say once a week, when you start SAGE, it checks with the canonical SAGE server on the Net and if a significant version (like 2.5) has been released, it just says something like A newer version of SAGE with software enhancements, version 2.5, is now available. If you have administrative privileges for SAGE you may wish to install it with the command sage -upgrade from the command line. Note that this may take some time, depending on the speed of your computer and network connection. Maybe. I'll running it by sage-devel. One of the things I hate most about software is stupid frickin' automatic notifications about upgrades... They drive me crazy. Especially Adobe Acrobat's. One way to make notifications less obtrusive is to make them omnipresent. That is, the banner could always read -- | SAGE Version 2.5.alpha2, Release Date: 2007-05-02 | Latest version is 2.5.alpha3, type upgrade() to upgrade. | Type notebook() for the GUI, and license() for information.| -- While we're at it, maybe the banner should also tell you if you're running a vanilla sage or a hacked sage and maybe what the last hg tag was. Nick --~--~-~--~~~---~--~~ To post to this group, send email to sage-devel@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/sage-devel URLs: http://sage.scipy.org/sage/ and http://modular.math.washington.edu/sage/ -~--~~~~--~~--~--~---
[sage-devel] Re: automatic sage upgrade notification?
On May 18, 2007, at 11:28 AM, William Stein wrote: On 5/18/07, David Joyner [EMAIL PROTECTED] wrote: Would it confuse users who could not update (eg, students using the SAGE notebook in a lab)? The message would be invisible to notebook users. (??) As more and more (non-dev) users will probably be using exclusively the notebook, I think that it should be available there too. Perhaps as part of the control panel GUI mentioned in the OS X .dmg thread, as that way people in a lab, etc. wouldn't see it, but people starting it up as a normal app would. - Robert --~--~-~--~~~---~--~~ To post to this group, send email to sage-devel@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/sage-devel URLs: http://sage.scipy.org/sage/ and http://modular.math.washington.edu/sage/ -~--~~~~--~~--~--~---
[sage-devel] Re: automatic sage upgrade notification?
On 5/18/07, David Joyner [EMAIL PROTECTED] wrote: How would this work? If sagemath was down or there wasn't a net connection would there be a weird error? No. It would try to contact sagemath once during each 1 week period. If during that time it found that an upgrade is available, it would mark that fact in a file. That file would be printed on startup of SAGE from the command line. If contacting sagemath.org fails after 2 seconds, it would silently fail, and another attempt wouldn't be made for a week. This will set off all kinds of firewall software in some environments... and rightfully so. Would it confuse users who could not update (eg, students using the SAGE notebook in a lab)? The message would be invisible to notebook users. (??) On 5/18/07, Nick Alexander [EMAIL PROTECTED] wrote: William Stein [EMAIL PROTECTED] writes: Hi, This is a discussion of update/upgrade notification for SAGE for normal users. Feel free to read it and share your thoughts. -- Forwarded message -- Another suggestion I have, automatic notification of major new version releases: Say once a week, when you start SAGE, it checks with the canonical SAGE server on the Net and if a significant version (like 2.5) has been released, it just says something like A newer version of SAGE with software enhancements, version 2.5, is now available. If you have administrative privileges for SAGE you may wish to install it with the command sage -upgrade from the command line. Note that this may take some time, depending on the speed of your computer and network connection. Maybe. I'll running it by sage-devel. One of the things I hate most about software is stupid frickin' automatic notifications about upgrades... They drive me crazy. Especially Adobe Acrobat's. One way to make notifications less obtrusive is to make them omnipresent. That is, the banner could always read -- | SAGE Version 2.5.alpha2, Release Date: 2007-05-02 | Latest version is 2.5.alpha3, type upgrade() to upgrade. | Type notebook() for the GUI, and license() for information.| -- While we're at it, maybe the banner should also tell you if you're running a vanilla sage or a hacked sage and maybe what the last hg tag was. Nick -- William Stein Associate Professor of Mathematics University of Washington http://www.williamstein.org --~--~-~--~~~---~--~~ To post to this group, send email to sage-devel@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/sage-devel URLs: http://sage.scipy.org/sage/ and http://modular.math.washington.edu/sage/ -~--~~~~--~~--~--~---
[sage-devel] Re: automatic sage upgrade notification?
On May 18, 2007, at 10:01 AM, Nick Alexander wrote: One way to make notifications less obtrusive is to make them omnipresent. That is, the banner could always read -- | SAGE Version 2.5.alpha2, Release Date: 2007-05-02 | Latest version is 2.5.alpha3, type upgrade() to upgrade. | Type notebook() for the GUI, and license() for information.| -- While we're at it, maybe the banner should also tell you if you're running a vanilla sage or a hacked sage and maybe what the last hg tag was. I like this idea. It would be nice if you could get this information from the notebook too--and if (somewhere unobtrusively) it had the name of the branch you were working on (assuming it's not main, this is something I've actually wanted for a while). I might also have something like Latest stable version..., not alphas, etc. Perhaps only major releases, (or x.x.1 'cause those often catch the last couple bugs if any, but don't introduce new ones--it might even be worth having a bug fix branch which is the latest stable release + bug fixes only if we're thinking of automatic upgrade prompts). - Robert --~--~-~--~~~---~--~~ To post to this group, send email to sage-devel@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/sage-devel URLs: http://sage.scipy.org/sage/ and http://modular.math.washington.edu/sage/ -~--~~~~--~~--~--~---
[sage-devel] Fwd: [sage-devel] Re: automatic sage upgrade notification?
Te next question arises -- do we gather information about the number of users based on this? I'm scared -- I don't want SAGE to be called evil spyware! -- Forwarded message -- From: Arthur Gaer [EMAIL PROTECTED] Date: May 18, 2007 12:01 PM Subject: Re: [sage-devel] Re: automatic sage upgrade notification? To: William Stein [EMAIL PROTECTED] William, I go off to a meeting and, like, you and your cohort solve the problem! :) Yeah, I think this could be a really good way to go, including the suggestion of latest stable version... in the banner. And, btw, this would also be a way of getting a rough idea of number of current SAGE users--very rough (behind NATing firewalls and stuff), but still, counting every unique IP address query every week/ month or so. Arthur On May 18, 2007, at 2:37 PM, William Stein wrote: -- Forwarded message -- From: Robert Bradshaw [EMAIL PROTECTED] Date: May 18, 2007 11:29 AM Subject: [sage-devel] Re: automatic sage upgrade notification? To: sage-devel@googlegroups.com On May 18, 2007, at 10:01 AM, Nick Alexander wrote: One way to make notifications less obtrusive is to make them omnipresent. That is, the banner could always read - - | SAGE Version 2.5.alpha2, Release Date: 2007-05-02 | Latest version is 2.5.alpha3, type upgrade() to upgrade. | Type notebook() for the GUI, and license() for information.| - - While we're at it, maybe the banner should also tell you if you're running a vanilla sage or a hacked sage and maybe what the last hg tag was. I like this idea. It would be nice if you could get this information from the notebook too--and if (somewhere unobtrusively) it had the name of the branch you were working on (assuming it's not main, this is something I've actually wanted for a while). I might also have something like Latest stable version..., not alphas, etc. Perhaps only major releases, (or x.x.1 'cause those often catch the last couple bugs if any, but don't introduce new ones--it might even be worth having a bug fix branch which is the latest stable release + bug fixes only if we're thinking of automatic upgrade prompts). - Robert -- William Stein Associate Professor of Mathematics University of Washington http://www.williamstein.org -- William Stein Associate Professor of Mathematics University of Washington http://www.williamstein.org --~--~-~--~~~---~--~~ To post to this group, send email to sage-devel@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/sage-devel URLs: http://sage.scipy.org/sage/ and http://modular.math.washington.edu/sage/ -~--~~~~--~~--~--~---
[sage-devel] Re: More polynomial algebra problems!
Michel [EMAIL PROTECTED] writes: And just for the record, I have a patch that coerces polynomial rings in any number of variables into rings with a superset of those variables, but its not yet ready for submission. There is an implementation independent method for doing this which is simply to use __call__. For this the target ring does not even have to be a polynomial ring. As far as I understand the SAGE coercion model, this is not correct. _coerce_ is supposed to be canonical, in a sense that is defined but not entirely clear to me. __call__ is emphatically *not* canonical. So calling __call__ in _coerce_ is never a good idea, and certainly not right by default. Also, for usability, setting up a massive tower and writing all the coercions by hand is a huge pain in the ass. And it gets even worse when you start working with multivariate quotient rings. Nick --~--~-~--~~~---~--~~ To post to this group, send email to sage-devel@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/sage-devel URLs: http://sage.scipy.org/sage/ and http://modular.math.washington.edu/sage/ -~--~~~~--~~--~--~---
[sage-devel] Re: automatic sage upgrade notification?
I'm worried that this check is going to slow down a developer working on a cloned copy. In this case, one is probably not interested in updating. Could this auto-update be turned off by default in all clones? William Stein wrote: On 5/18/07, David Joyner [EMAIL PROTECTED] wrote: How would this work? If sagemath was down or there wasn't a net connection would there be a weird error? No. It would try to contact sagemath once during each 1 week period. If during that time it found that an upgrade is available, it would mark that fact in a file. That file would be printed on startup of SAGE from the command line. If contacting sagemath.org fails after 2 seconds, it would silently fail, and another attempt wouldn't be made for a week. This will set off all kinds of firewall software in some environments... and rightfully so. Would it confuse users who could not update (eg, students using the SAGE notebook in a lab)? The message would be invisible to notebook users. (??) On 5/18/07, Nick Alexander [EMAIL PROTECTED] wrote: William Stein [EMAIL PROTECTED] writes: Hi, This is a discussion of update/upgrade notification for SAGE for normal users. Feel free to read it and share your thoughts. -- Forwarded message -- Another suggestion I have, automatic notification of major new version releases: Say once a week, when you start SAGE, it checks with the canonical SAGE server on the Net and if a significant version (like 2.5) has been released, it just says something like A newer version of SAGE with software enhancements, version 2.5, is now available. If you have administrative privileges for SAGE you may wish to install it with the command sage -upgrade from the command line. Note that this may take some time, depending on the speed of your computer and network connection. Maybe. I'll running it by sage-devel. One of the things I hate most about software is stupid frickin' automatic notifications about upgrades... They drive me crazy. Especially Adobe Acrobat's. One way to make notifications less obtrusive is to make them omnipresent. That is, the banner could always read -- | SAGE Version 2.5.alpha2, Release Date: 2007-05-02 | Latest version is 2.5.alpha3, type upgrade() to upgrade. | Type notebook() for the GUI, and license() for information.| -- While we're at it, maybe the banner should also tell you if you're running a vanilla sage or a hacked sage and maybe what the last hg tag was. Nick --~--~-~--~~~---~--~~ To post to this group, send email to sage-devel@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/sage-devel URLs: http://sage.scipy.org/sage/ and http://modular.math.washington.edu/sage/ -~--~~~~--~~--~--~---
[sage-devel] Re: Fwd: [sage-devel] Re: automatic sage upgrade notification?
On May 18, 10:07 pm, [EMAIL PROTECTED] wrote: I HATE it when software phones home. There should be, at least, a config entry available to disable this behavior. And IMO, it should be disabled by default. Yes, Opt in is the way to go. Anything else is just plain EVIL(tm). The other suggestion about counting uniq IPs won't tell you much about the number of installations of SAGE either, because with my DSL connection at home I get a shiny new one every 24 hours. The same more or less applies to my IP at the office I get via dhcp. You could log the MACs, but let's just say that this isn't exactly nice either. Another possibility would be that people who use SAGE and like it should send an email to some specified address. Then somebody could send them back an email stating you are registered SAGE user #, similar to the Linux user counter one sees in signatures every once in a while. Should I venture a guess who will be SAGE user #1? Cheers, Michel --~--~-~--~~~---~--~~ To post to this group, send email to sage-devel@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/sage-devel URLs: http://sage.scipy.org/sage/ and http://modular.math.washington.edu/sage/ -~--~~~~--~~--~--~---
[sage-devel] Re: Fwd: [sage-devel] Re: automatic sage upgrade notification?
I would like to register to use sage. Marshall Hampton, SAGE user #1 :) On May 18, 3:47 pm, mabshoff [EMAIL PROTECTED] dortmund.de wrote: On May 18, 10:07 pm, [EMAIL PROTECTED] wrote: I HATE it when software phones home. There should be, at least, a config entry available to disable this behavior. And IMO, it should be disabled by default. Yes, Opt in is the way to go. Anything else is just plain EVIL(tm). The other suggestion about counting uniq IPs won't tell you much about the number of installations of SAGE either, because with my DSL connection at home I get a shiny new one every 24 hours. The same more or less applies to my IP at the office I get via dhcp. You could log the MACs, but let's just say that this isn't exactly nice either. Another possibility would be that people who use SAGE and like it should send an email to some specified address. Then somebody could send them back an email stating you are registered SAGE user #, similar to the Linux user counter one sees in signatures every once in a while. Should I venture a guess who will be SAGE user #1? Cheers, Michel --~--~-~--~~~---~--~~ To post to this group, send email to sage-devel@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/sage-devel URLs: http://sage.scipy.org/sage/ and http://modular.math.washington.edu/sage/ -~--~~~~--~~--~--~---
[sage-devel] Re: More polynomial algebra problems!
Michel [EMAIL PROTECTED] writes: As far as I understand the SAGE coercion model, this is not correct. _coerce_ is supposed to be canonical, in a sense that is defined but not entirely clear to me. __call__ is emphatically *not* canonical. So calling __call__ in _coerce_ is never a good idea, and certainly not right by default. Sorry I was not clear. I meant to say you can **implement** coerce in terms of __call__. Simply call a polynomial with as argument the generators of the target with the same names as the generators of the source. This works when the source is a free object and is fully canonical (and generic). I disagree with the claim that this is canonical. Perhaps you can write _coerce_ such that it is canonical and such that it uses __call__, but I think such a thing is tricky and deserves some attention and thought. Consider the following situation: rings R and S such that there is no canonical coercion R - S but there is a noncanonical coercion R - S, given by S.__call__. I would expect S['x']._coerce_(R['x'](...)) to fail, but S['x'](R['x'](...)) to succeed. That probably means that S['x'] should not be implemented in terms of its own __call__ method. If you don't like that example, build a large tower such that _coerce_ has to look back several levels before deciding there is no canonical coercion. Nick --~--~-~--~~~---~--~~ To post to this group, send email to sage-devel@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/sage-devel URLs: http://sage.scipy.org/sage/ and http://modular.math.washington.edu/sage/ -~--~~~~--~~--~--~---