Re: [sage-devel] Re: is it intentional that prod does not stop when it hits 0?
Handling with try and check would be bad, but even in general this is an idea that may not be what we want. For instance there are cases where the product is interesting even if it "is zero". sage: x = Qp(5,10)(0) sage: y = x.add_bigoh(5) sage: not x, not y (True, True) sage: x * 5, y * 5 (0, O(5^6)) Chris -- You received this message because you are subscribed to the Google Groups "sage-devel" group. To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/sage-devel/28fee9ed-e94e-4f04-8e80-c02b585cafd3n%40googlegroups.com.
Re: [sage-devel] VOTE: move Sage development to Github
0(No real preference and too little understanding of the matter, but very happy that we have a meaningful vote on things like this.) -- You received this message because you are subscribed to the Google Groups "sage-devel" group. To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/sage-devel/43db66a5-3050-4908-9644-ffe0f6deb513n%40googlegroups.com.
Re: [sage-devel] Re: "Real Field" -> "Real Floating-point Field"
+1 for changing printing of RR to something like John Cremona or others have suggested -1 for changing RR or RealField at this stage. (It is not "progress" to change a name, so does not vouch for breaking backwards compatibility; I may change when and if another serious candidate for RR it is here, but probably not even then.) Chris -- You received this message because you are subscribed to the Google Groups "sage-devel" group. To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/sage-devel/b437be3b-27e0-4a9b-8714-7f249a6762f2n%40googlegroups.com.
[sage-devel] Re: Possible bug regarding elliptic curves modulo prime powers
I fear you will have to do a lot by hand in sage. You can reduce a projective point modulo p^k as below, but the output will have to be a list of elements in Z/p^kZ, since projective spaces are not defined over general rings as far as I am aware. What I meant is that you can actually work in E( Qp ) instead and at the end extract the mod p^k information that you need. I am sure others are better placed to comment how much easier these things are in magma. Chris sage: def reduction_of_point(P,k): : """ : Reduce projective point P defined over Qp modulo p^k : """ : v = min(valuation(x) for x in P) : p = P[0].parent().prime() : R = IntegerModRing(p^k) : return [ R( p^(-v)*x ) for x in P] On Friday, 15 May 2020 09:53:46 UTC+1, Daniel Loughran wrote: > > Hi Chris, > > Thanks for the advice, but I can't seem to get this to work either. I get > the error "ValueError: element must have non-negative valuation in order > to compute residue". > > Any idea how to make this work without errors? Or should I just give up > and use magma instead? > > E=EllipticCurve(Qp(2,5),[0, 0, 1, -1, 0]); E > > Elliptic Curve defined by y^2 + (1+O(2^5))*y = x^3 + > (1+2+2^2+2^3+2^4+O(2^5))*x over 2-adic Field with capped relative precision 5 > > P=E(2,-3,8); P > > (2^-2 + O(2^3) : 2^-3 + 2^-1 + 1 + 2 + O(2^2) : 1 + O(2^5)) > > E4=E.change_ring(Integers(4)); E4 > > Elliptic Curve defined by y^2 + y = x^3 + 3*x over Ring of integers modulo 4 > > E4(P) > ValueError: element must have non-negative valuation in order to compute > residue. > > > Dan > > On Friday, 15 May 2020 09:44:43 UTC+1, chris wuthrich wrote: >> >> Dear Daniel >> >> indeed elliptic curves over rings (what should be called technically >> Weierstrass equations with non-zero discriminant, instead of unit >> discriminant) are rather useless in Sage. >> I would recommend to work with 2-adics in your case and to reduce modulo >> 4 in the end. You could work over Qp(p,k) if you want modulo p^k. >> >> I hope that this may help with what you do. Of course, one should >> implement this properly one day. >> >> Chris >> >> On Thursday, 14 May 2020 11:41:04 UTC+1, Daniel Loughran wrote: >>> >>> Hello. I think that I may have found a bug involving elliptic curves >>> modulo powers of primes. I have attached the working jupyter notebook, but >>> my code and results are also below. >>> >>> In my code I have an elliptic curve E over Q with good reduction at 2 >>> and the point P = (2:-3:8) (homogeneous coordinates). >>> >>> It is clear that the reduction modulo 4 of this point in projective >>> space is (2:1:0). >>> >>> However, sage is telling me that when I reduce the curve modulo 4 then >>> ask what point P reduces to, I get the identity element (0:1:0). >>> >>> My guess is that sage does something like put this point into the form >>> (1/4:-3/8:1), then notices that 4 divides the denominator of the >>> x-coordinate so just kills it. But really it should be clearing >>> denominators before it tries to reduce modulo 4. >>> >>> There is another related bug: if I try to instead reduce this point >>> modulo 16, then I just get the error "inverse of Mod(4, 16) does not >>> exist". I guess this is a similar problem to the above. >>> >>> >>> >>> -- >>> >>> E=EllipticCurve([0, 0, 1, -1, 0]); E >>> >>> Elliptic Curve defined by y^2 + y = x^3 - x over Rational Field >>> >>> P=E(2,-3,8); P >>> >>> (1/4 : -3/8 : 1) >>> >>> E4=E.change_ring(Integers(4)); E4 >>> >>> Elliptic Curve defined by y^2 + y = x^3 + 3*x over Ring of integers modulo 4 >>> >>> E4(P) >>> >>> (0 : 1 : 0) >>> >>> P2. = ProjectiveSpace(Integers(4),2); P2 >>> >>> Projective Space of dimension 2 over Ring of integers modulo 4 >>> >>> P2(2,-3,8) >>> >>> (2 : 1 : 0) >>> >>> P2(0,1,0) >>> >>> (0 : 1 : 0) >>> >>> P2(2,-3,8)==P2(0,1,0) >>> >>> False >>> >>> E16=E.change_ring(Integers(16)); E16 >>> >>> Elliptic Curve defined by y^2 + y = x^3 + 15*x over Ring of integers modulo >>> 16 >>> >>> E16(P) >>> ZeroDivisionError: inverse of Mod(4, 16) does not exist >>> >>> -- You received this message because you are subscribed to the Google Groups "sage-devel" group. To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/sage-devel/43d0ccd8-bbe1-4305-b816-e97791e5d25e%40googlegroups.com.
[sage-devel] Re: Possible bug regarding elliptic curves modulo prime powers
Dear Daniel indeed elliptic curves over rings (what should be called technically Weierstrass equations with non-zero discriminant, instead of unit discriminant) are rather useless in Sage. I would recommend to work with 2-adics in your case and to reduce modulo 4 in the end. You could work over Qp(p,k) if you want modulo p^k. I hope that this may help with what you do. Of course, one should implement this properly one day. Chris On Thursday, 14 May 2020 11:41:04 UTC+1, Daniel Loughran wrote: > > Hello. I think that I may have found a bug involving elliptic curves > modulo powers of primes. I have attached the working jupyter notebook, but > my code and results are also below. > > In my code I have an elliptic curve E over Q with good reduction at 2 and > the point P = (2:-3:8) (homogeneous coordinates). > > It is clear that the reduction modulo 4 of this point in projective space > is (2:1:0). > > However, sage is telling me that when I reduce the curve modulo 4 then ask > what point P reduces to, I get the identity element (0:1:0). > > My guess is that sage does something like put this point into the form > (1/4:-3/8:1), then notices that 4 divides the denominator of the > x-coordinate so just kills it. But really it should be clearing > denominators before it tries to reduce modulo 4. > > There is another related bug: if I try to instead reduce this point modulo > 16, then I just get the error "inverse of Mod(4, 16) does not exist". I > guess this is a similar problem to the above. > > > > -- > > E=EllipticCurve([0, 0, 1, -1, 0]); E > > Elliptic Curve defined by y^2 + y = x^3 - x over Rational Field > > P=E(2,-3,8); P > > (1/4 : -3/8 : 1) > > E4=E.change_ring(Integers(4)); E4 > > Elliptic Curve defined by y^2 + y = x^3 + 3*x over Ring of integers modulo 4 > > E4(P) > > (0 : 1 : 0) > > P2. = ProjectiveSpace(Integers(4),2); P2 > > Projective Space of dimension 2 over Ring of integers modulo 4 > > P2(2,-3,8) > > (2 : 1 : 0) > > P2(0,1,0) > > (0 : 1 : 0) > > P2(2,-3,8)==P2(0,1,0) > > False > > E16=E.change_ring(Integers(16)); E16 > > Elliptic Curve defined by y^2 + y = x^3 + 15*x over Ring of integers modulo 16 > > E16(P) > ZeroDivisionError: inverse of Mod(4, 16) does not exist > > -- You received this message because you are subscribed to the Google Groups "sage-devel" group. To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/sage-devel/cda39b98-71be-462d-aa41-7d1195a0383e%40googlegroups.com.
[sage-devel] srange under python3
I have a question about the future of srange under python 3, which changes the behaviour of range. Probably this has been discussed before but I could not find it. In 9.0.beta10 we have sage: range(1,3) range(1, 3) sage: srange(1,3) [1, 2] sage: sxrange(1,3) sage: [1..2] [1, 2] sage: type(range(1,3)), type(srange(1,3)), type(sxrange(1,3)), type([1..2]) (, , , ) and no xrange anymore. Would it make sense to drop sxrange and make srange an iterator like range, while keeping [a..b] as a list as suggested by its notation? Chris -- You received this message because you are subscribed to the Google Groups "sage-devel" group. To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/sage-devel/eb56b434-5e1e-4ce7-9585-16f00efb49f6%40googlegroups.com.
[sage-devel] problem with 8.7.beta1
Hello compiling from source for SageMath version 8.7.beta1 on my opensuse leap 15.0 caused an error after compiling libffi. It looks like the problem mentioned at the bottom of #25900. It started as [libffi-3.2.1] [libffi-3.2.1] No record that 'libffi' was ever installed; skipping uninstall [libffi-3.2.1] Configuring libffi-3.2.1 [libffi-3.2.1] configure: loading site script /usr/share/site/x86_64-unknown-linux-gnu ... and then ended with ... [libffi-3.2.1] /usr/bin/install -c -m 644 libffi.pc '/usr/local/sage/local/var/tmp/sage/build/libffi-3.2.1/inst/usr/local/sage/local/lib/pkgconfig' [libffi-3.2.1] make[7]: Leaving directory '/usr/local/sage/local/var/tmp/sage/build/libffi-3.2.1/src/x86_64-unknown-linux-gnu' [libffi-3.2.1] make[6]: Leaving directory '/usr/local/sage/local/var/tmp/sage/build/libffi-3.2.1/src/x86_64-unknown-linux-gnu' [libffi-3.2.1] make[5]: Leaving directory '/usr/local/sage/local/var/tmp/sage/build/libffi-3.2.1/src/x86_64-unknown-linux-gnu' [libffi-3.2.1] make[4]: Leaving directory '/usr/local/sage/local/var/tmp/sage/build/libffi-3.2.1/src' [libffi-3.2.1] [libffi-3.2.1] real 0m7.001s [libffi-3.2.1] user 0m5.834s [libffi-3.2.1] sys 0m1.524s [libffi-3.2.1] Copying package files from temporary location /usr/local/sage/local/var/tmp/sage/build/libffi-3.2.1/inst to /usr/local/sage/local [libffi-3.2.1] cp: cannot overwrite non-directory '/usr/local/sage/local/./lib64' with directory '/usr/local/sage/local/var/tmp/sage/build/libffi-3.2.1/inst/usr/local/sage/local/./lib64' /usr/local/sage/local/lib64 is an existing link to /usr/local/sage/local/lib/ full log attached. Chris -- You received this message because you are subscribed to the Google Groups "sage-devel" group. To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+unsubscr...@googlegroups.com. To post to this group, send email to sage-devel@googlegroups.com. Visit this group at https://groups.google.com/group/sage-devel. For more options, visit https://groups.google.com/d/optout. Found local metadata for libffi-3.2.1 Using cached file /usr/local/sage/upstream/libffi-3.2.1.tar.gz libffi-3.2.1 Setting up build directory for libffi-3.2.1 Finished extraction No patch files found in ../patches Host system: Linux linux-qk0i 4.12.14-lp150.12.45-default #1 SMP Mon Jan 14 20:29:59 UTC 2019 (7a62739) x86_64 x86_64 x86_64 GNU/Linux C compiler: gcc C compiler version: Using built-in specs. COLLECT_GCC=gcc COLLECT_LTO_WRAPPER=/usr/lib64/gcc/x86_64-suse-linux/7/lto-wrapper OFFLOAD_TARGET_NAMES=hsa:nvptx-none Target: x86_64-suse-linux Configured with: ../configure --prefix=/usr --infodir=/usr/share/info --mandir=/usr/share/man --libdir=/usr/lib64 --libexecdir=/usr/lib64 --enable-languages=c,c++,objc,fortran,obj-c++,ada,go --enable-offload-targets=hsa,nvptx-none=/usr/nvptx-none, --without-cuda-driver --enable-checking=release --disable-werror --with-gxx-include-dir=/usr/include/c++/7 --enable-ssp --disable-libssp --disable-libvtv --disable-libcc1 --disable-plugin --with-bugurl=http://bugs.opensuse.org/ --with-pkgversion='SUSE Linux' --with-slibdir=/lib64 --with-system-zlib --enable-__cxa_atexit --enable-libstdcxx-allocator=new --disable-libstdcxx-pch --enable-version-specific-runtime-libs --with-gcc-major-version-only --enable-linker-build-id --enable-linux-futex --enable-gnu-indirect-function --program-suffix=-7 --without-system-libunwind --enable-multilib --with-arch-32=x86-64 --with-tune=generic --build=x86_64-suse-linux --host=x86_64-suse-linux Thread model: posix gcc version 7.3.1 20180323 [gcc-7-branch revision 258812] (SUSE Linux) No record that 'libffi' was ever installed; skipping uninstall Configuring libffi-3.2.1 configure: loading site script /usr/share/site/x86_64-unknown-linux-gnu checking build system type... x86_64-unknown-linux-gnu checking host system type... x86_64-unknown-linux-gnu checking target system type... x86_64-unknown-linux-gnu continue configure in default builddir "./x86_64-unknown-linux-gnu" exec /bin/bash .././configure "--srcdir=.." "--enable-builddir=x86_64-unknown-linux-gnu" "linux gnu" configure: loading site script /usr/share/site/x86_64-unknown-linux-gnu checking build system type... x86_64-unknown-linux-gnu checking host system type... x86_64-unknown-linux-gnu checking target system type... x86_64-unknown-linux-gnu checking for gsed... sed checking for a BSD-compatible install... /usr/bin/install -c checking whether build environment is sane... yes checking for a thread-safe mkdir -p... /usr/bin/mkdir -p checking for gawk... gawk checking whether make sets $(MAKE)... yes checking whether make supports nested variables... yes checking for gcc... gcc
Re: [sage-devel] Sage 8.4 does not compile / CentOS 6.10
My CentOS problems were all solved after I installed and used devtoolset as suggested in Isuru's reply. Chris -- You received this message because you are subscribed to the Google Groups "sage-devel" group. To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+unsubscr...@googlegroups.com. To post to this group, send email to sage-devel@googlegroups.com. Visit this group at https://groups.google.com/group/sage-devel. For more options, visit https://groups.google.com/d/optout.
[sage-devel] Re: Matrix groups are not uniquely represented, why?
> Well, that's not a matrix group in a canonical way, so there's a good reason for that (and, if you're interested in the abstract group it may well be that the permutation representation is the fastest to work with). Agree, but it would be nice to say G = PGL(2,13) and then G(some matrix) to get its class or backwards to represent an element by a matrix, etc. But that is a different stroy than what this tread was about. -- You received this message because you are subscribed to the Google Groups "sage-devel" group. To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+unsubscr...@googlegroups.com. To post to this group, send email to sage-devel@googlegroups.com. Visit this group at https://groups.google.com/group/sage-devel. For more options, visit https://groups.google.com/d/optout.
[sage-devel] Re: Matrix groups are not uniquely represented, why?
> I think it is a bad thing in this case for == to be equality as sets. > Imagine if these are two really big, equal, but differently constructed > subgroups. This would be a really long and expensive check, whereas in most > cases, checking the defining objects are sufficient. I believe we have > other places in Sage where == is not strict mathematical equality for > similar reasons. -1 on changing the == semantics here. > > I am strongly in favour of changing all the other instances of wrong ==; or, at least, that they are well documented aberations. Or that we rename things (like subgroups_with_generator) to make it mathematically correct again. If ever a user wants to check that the two subgroups were given by the same generators then he will check if .gens() are equal. Otherwise he will know that it may take time to test equality, just like with any other function. I am happy with John's example of quadratic fields. The QQ-algebras QuadraticField(2) and QuadraticField(8) are not equal in any canonical thing they are contained in as there are two isomorphisms between them. > Now I would say the equality as sets (which really comes down to equality > of elements) is a bug. Two matrix group elements should compare by their > matrices and not have the coercion system involved otherwise. My guess is > the coercion system tries to convert the elements of H into H3 and vice > versa, which is cannot do, and hence, results in a False for equality. This > probably requires a reimplementation of the comparison method of matrix > group elements. > Yes, fully agree. In fact elements should not have a "matrix" at all, since they are matrices by definition to the user. The element class, like many other group things, may want to be worked over completely. I am also often unhappy about PGL, which returns a permutation group, by the way. Chris -- You received this message because you are subscribed to the Google Groups "sage-devel" group. To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+unsubscr...@googlegroups.com. To post to this group, send email to sage-devel@googlegroups.com. Visit this group at https://groups.google.com/group/sage-devel. For more options, visit https://groups.google.com/d/optout.
[sage-devel] Re: Matrix groups are not uniquely represented, why?
As a simple-minded user I stumbled over exactly this last week. I don't understand much of what this thread is discussing, but I know what a simple-minded user wants. sage: G = GL(2,13) sage: G = G.as_matrix_group() sage: H = G.subgroup([ matrix(GF(13),[[1,0],[1,1]]) ]) sage: H2 = G.subgroup([ matrix(GF(13),[[1,1],[0,1]]) ]) sage: H3 = G.subgroup([ matrix(GF(13),[[1,0],[2,1]]) ]) I expect H == H3 to say True as they are the same subgroup. I expect H = H2 to say False, since they are not the same subgroup, even though they are isomorphic. Instead sage: H == H3 False sage: matrix(GF(13),[[1,0],[1,1]]) in H3 True sage: matrix(GF(13),[[1,0],[2,1]]) in H True sage: H.is_isomorphic(H3) True sage: H.is_isomorphic(H2) True sage: matrix(GF(13),[[1,0],[1,1]]) in H2 False I though of working around it by checking if they are the same as sets, but to my surprise: sage: Set( h for h in H ) == Set( h for h in H3 ) False sage: Set( h.matrix() for h in H ) == Set( h.matrix() for h in H3 ) True In short: I consider this a bug. No matter how this is done at the back, the user expects == to mean mathematical equality, here equality of subgroups. Otherwise the function should be called subgroups_with_given_generators. Chris -- You received this message because you are subscribed to the Google Groups "sage-devel" group. To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+unsubscr...@googlegroups.com. To post to this group, send email to sage-devel@googlegroups.com. Visit this group at https://groups.google.com/group/sage-devel. For more options, visit https://groups.google.com/d/optout.
[sage-devel] Re: Second round poll for H5 a specific guideline for writing docstrings
-1 I am with Jeroen on this one. On Thursday, 18 May 2017 23:25:41 UTC+1, Kwankyu Lee wrote: > > Hi, > > I prepared H5 revised from G5 based on your ideas and wishes. It was hard > to make a compromise from your differing opinions and reach a proposal for > the better. So this time* if I fail to get approval from most of you, the > guideline will be simply discarded.* > ** > H5. Write > > OUTPUT: > > - tuple of lattices > > Note the leading hyphen and no period at the end. If the output consists > of several items, add each starting with a hyphen. > > If you agree, flag +1; if you don't, flag -1. > -- You received this message because you are subscribed to the Google Groups "sage-devel" group. To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+unsubscr...@googlegroups.com. To post to this group, send email to sage-devel@googlegroups.com. Visit this group at https://groups.google.com/group/sage-devel. For more options, visit https://groups.google.com/d/optout.
[sage-devel] Re: error compiling ntl in sage 7.3.beta8
The original problem in this thread was resolved, but then there were other problems with compiling sage 7.3 on CentOS6.8. I decided to install the devtools and it worked fine. Maybe somewhere in the installation guidelines, one could add that for CentOS it is recommended to install devtoolset-4 and autotools-latest and to compile after "scl enable devtoolset-4 autotools-latest bash". Chris -- You received this message because you are subscribed to the Google Groups "sage-devel" group. To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+unsubscr...@googlegroups.com. To post to this group, send email to sage-devel@googlegroups.com. Visit this group at https://groups.google.com/group/sage-devel. For more options, visit https://groups.google.com/d/optout.
[sage-devel] Re: error compiling ntl in sage 7.3.beta8
Thanks a lot, leif, for the help. I will ask the sysadmin to update binutils. Your idea with SAGE_FAT_BINARY seems to get around the problem, by now. If it still helps for #20779: sageadm@pmlapsag01:~/sage$ as --version GNU assembler version 2.20.51.0.2-5.44.el6 20100205 Copyright 2009 Free Software Foundation, Inc. This program is free software; you may redistribute it under the terms of the GNU General Public License version 3 or later. This program has absolutely no warranty. This assembler was configured for a target of `x86_64-redhat-linux'. -- sageadm@pmlapsag01:~/sage$ head -25 /proc/cpuinfo processor : 0 vendor_id : GenuineIntel cpu family : 6 model : 63 model name : Intel(R) Xeon(R) CPU E5-2660 v3 @ 2.60GHz stepping: 2 microcode : 46 cpu MHz : 2593.993 cache size : 25600 KB physical id : 0 siblings: 2 core id : 0 cpu cores : 2 apicid : 0 initial apicid : 0 fpu : yes fpu_exception : yes cpuid level : 15 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts mmx fxsr sse sse2 ss ht syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts xtopology tsc_reliable nonstop_tsc aperfmperf unfair_spinlock pni pclmulqdq ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm ida arat epb xsaveopt pln pts dtherm fsgsbase bmi1 avx2 smep bmi2 invpcid bogomips: 5187.98 clflush size: 64 cache_alignment : 64 address sizes : 42 bits physical, 48 bits virtual power management: -- -- You received this message because you are subscribed to the Google Groups "sage-devel" group. To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+unsubscr...@googlegroups.com. To post to this group, send email to sage-devel@googlegroups.com. Visit this group at https://groups.google.com/group/sage-devel. For more options, visit https://groups.google.com/d/optout.
[sage-devel] error compiling ntl in sage 7.3.beta8
Trying to compile sage 7.3.beta8 on CentOS6.8, I ran into a problem compiling ntl 9.8.1. Not sure what to include. Just ask. Chris Host system: Linux pmlapsag01 2.6.32-642.1.1.el6.x86_64 #1 SMP Tue May 31 21:57:07 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux C compiler: gcc C compiler version: Using built-in specs. COLLECT_GCC=gcc COLLECT_LTO_WRAPPER=/home/sageadm/sage/local/libexec/gcc/x86_64-unknown-linux-gnu/4.9.3/lto-wrapper Target: x86_64-unknown-linux-gnu Configured with: ../src/configure --prefix=/home/sageadm/sage/local --with-local-prefix=/home/sageadm/sage/local --with-gmp=/home/sageadm/sage/local --with-mpfr=/home/sageadm/sage/local --with-mpc=/home/sageadm/sage/local --with-system-zlib --disable-multilib --disable-nls --enable-languages=c,c++,fortran --disable-libitm Thread model: posix gcc version 4.9.3 (GCC) Applying patches to NTL. config.status: executing libtool commands Configuring NTL. * checking for libtool * libtool (GNU libtool) 2.4.2 Written by Gordon Matzigkeit < ... >, 1996 Copyright (C) 2011 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. * libtool OK * *** checking -march=native flag CXXAUTOFLAGS=" -march=native" *** -march=native works CXXAUTOFLAGS=" -march=native" [ntl-9.8.1.p0] Tuning and building NTL. [ntl-9.8.1.p0] make[3]: Entering directory `/home/sageadm/sage/local/var/tmp/sage/build/ntl-9.8.1.p0/src/ntl/src' [ntl-9.8.1.p0] make setup1 [ntl-9.8.1.p0] make[4]: Entering directory `/home/sageadm/sage/local/var/tmp/sage/build/ntl-9.8.1.p0/src/ntl/src' [ntl-9.8.1.p0] g++ -I../include -I. -march=native -O2 -g -c MakeDescAux.c [ntl-9.8.1.p0] g++ -I../include -I. -march=native -O2 -g -L/home/sageadm/sage/local/lib -Wl,-rpath,/home/sageadm/sage/local/lib -o MakeDesc MakeDesc.c MakeDescAux.o -lm [ntl-9.8.1.p0] /tmp/ccPRNw4z.s: Assembler messages: [ntl-9.8.1.p0] /tmp/ccPRNw4z.s:873: Error: no such instruction: `shlx %r12,%rax,%rax' [ntl-9.8.1.p0] /tmp/ccPRNw4z.s:932: Error: no such instruction: `shlx %r12,%rax,%rax' ... [ntl-9.8.1.p0] /tmp/ccPRNw4z.s:4374: Error: no such instruction: `shlx %rax,%r15,%r15' [ntl-9.8.1.p0] /tmp/ccPRNw4z.s:4791: Error: no such instruction: `shlx %r13,%rdx,%rdx' [ntl-9.8.1.p0] make[4]: *** [setup1] Error 1 -- You received this message because you are subscribed to the Google Groups "sage-devel" group. To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+unsubscr...@googlegroups.com. To post to this group, send email to sage-devel@googlegroups.com. Visit this group at https://groups.google.com/group/sage-devel. For more options, visit https://groups.google.com/d/optout.
[sage-devel] Re: screen output of compilation
I added that in #20712 > Thanks, now I know where to disable it. I am fine just doing it just for me. I am sure you had good reasons to introduce it. I will leave it to others annoyed by it (if any) to revert it or to redirect it to a file rather than the screen. Chris -- You received this message because you are subscribed to the Google Groups "sage-devel" group. To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+unsubscr...@googlegroups.com. To post to this group, send email to sage-devel@googlegroups.com. Visit this group at https://groups.google.com/group/sage-devel. For more options, visit https://groups.google.com/d/optout.
[sage-devel] screen output of compilation
Hi all. When I do make or sage -b each time there is now a huge print python_packages = ['sage', 'sage.lfunctions', 'sage_setup.autogen.pari.doc'] python_data_files = [('solverconf_helper.h'])] to the screen. Is there a way to hide this? It annoys me that I have to scroll up to find the cython warnings before it. Chris -- You received this message because you are subscribed to the Google Groups "sage-devel" group. To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+unsubscr...@googlegroups.com. To post to this group, send email to sage-devel@googlegroups.com. Visit this group at https://groups.google.com/group/sage-devel. For more options, visit https://groups.google.com/d/optout.
[sage-devel] Re: Re: About __len__
Sorry for reviving an old and probably recurring discussion. len returns an int. So a naive user wanting to find what proportion of elements in a list have a certain property will fall into this trap: sage: li = [2,3,4,5,6,7,8,9] sage: pa = [k for k in li if k>6] sage: len(pa)/len(li) 0 The same goes for li.count(8)/len(li). Now I know people don't want to overwrite python len (although I would), but at least we should make the user aware of this. Currently sage: len? Docstring: len(object) -> integer Return the number of items of a sequence or collection. Init docstring: x.__init__(...) initializes x; see help(type(x)) for signature File: Type: builtin_function_or_method sage: li.count? Docstring: L.count(value) -> integer -- return number of occurrences of value Init docstring: x.__init__(...) initializes x; see help(type(x)) for signature File: Type: builtin_function_or_method Is there a way that we could at least overwrite the docstring ? Chris -- You received this message because you are subscribed to the Google Groups "sage-devel" group. To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+unsubscr...@googlegroups.com. To post to this group, send email to sage-devel@googlegroups.com. Visit this group at https://groups.google.com/group/sage-devel. For more options, visit https://groups.google.com/d/optout.
[sage-devel] Re: I > 0 is true
>From the point of view of teaching maths with sage, I would prefer I not to be comparable with 0. IMHO, these discussions of what is nicer for those programming should be set behind what the average mathematician expects sage to do. By the way, I still object to the idea that I is by default a symbolic expression in sage, see ticket http://trac.sagemath.org/ticket/18036. As I^2 is currently not an integer. -- You received this message because you are subscribed to the Google Groups "sage-devel" group. To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+unsubscr...@googlegroups.com. To post to this group, send email to sage-devel@googlegroups.com. Visit this group at http://groups.google.com/group/sage-devel. For more options, visit https://groups.google.com/d/optout.
[sage-devel] Re: VOTE: code of conduct - ends Monday at midnight, PST.
[X ] Yes -- adopt the code of conduct stated below -- You received this message because you are subscribed to the Google Groups sage-devel group. To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+unsubscr...@googlegroups.com. To post to this group, send email to sage-devel@googlegroups.com. Visit this group at http://groups.google.com/group/sage-devel. For more options, visit https://groups.google.com/d/optout.
[sage-devel] Re: should bool(x 0) be False or an exception?
I am not against the exception. The question is what quantifiers we use for variables, isn't it? Antoher approach would be to implement it such that the quatifier is always forall for all variables in the expression, i.e. it only returns True if for all possible values of x, y, .. it is True. Otherwise it returns False. That would be another consistent approach. I don't know which one I favour, I only know that the current state is very bad. Chris. -- You received this message because you are subscribed to the Google Groups sage-devel group. To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+unsubscr...@googlegroups.com. To post to this group, send email to sage-devel@googlegroups.com. Visit this group at http://groups.google.com/group/sage-devel. For more options, visit https://groups.google.com/groups/opt_out.
[sage-devel] Re: All known bugs in Sage silently producing wrong answers
I would add 12080 Manin constant 10698 error in padic power series construction 8198 p-adic precision in vector multiplication Chris -- To post to this group, send an email to sage-devel@googlegroups.com To unsubscribe from this group, send an email to sage-devel+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sage-devel URL: http://www.sagemath.org
[sage-devel] Re: evaluation of polynomials in several variables
I opened a separate ticket #10946 for this issue. Hopefully someone with better knowledge of keywords, evaluations, polynomials, singulars and such will find a way to solve it. Thanks for the comments. Chris. -- To post to this group, send an email to sage-devel@googlegroups.com To unsubscribe from this group, send an email to sage-devel+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sage-devel URL: http://www.sagemath.org
[sage-devel] Re: evaluation of polynomials in several variables
No I am against changing this. For two reasons, when working with polynomials in variable names liks k, p. It is not always easy to remember which was the first and which was the second variable. Then it is very handy to pass keywords for evaluation - but still to expect a base_ring element. +1 (but where is the second reason?) Well, given that my message got posted three times, there are 3 reasons already :) The other (which I forgot to include in the end) is that it would probably imply a lot of changes throughout the full sage code and many people might be used to the syntax. Instead I think we should check that all variables are evaluated. This would be consistent with the call f(2,3) which screams when the number of variables is not correct. Even better, we could check if the result is really a ring element after substitution, which is easy to do. E.g. I would allow f = x*(x+y) f(x=0) but not f(x=1) I don't like this approach. I would allow both f(x=0) and f(x=1), in both cases returning a univariate polynomial. Mathematically I fully agreee with you. I would expect an element of R[x,y]/(x) = R[x,y]/(x-1) = R[y] in both cases. But if we want to stick to the principle that the type should be the same for all returned answers, we would have to do f.subs() gives back an element of the parent of f and f(..) gives back an element of the base-ring of f and hence it would only be allowed to be used in case the evaluation really yields an element in there. My suggestion above is based on the fact that it is very easy to check if the result is in the base_ring. Maybe it is just as easy to check if the length of the keywords is equal to the number of variables. Chris. -- To post to this group, send an email to sage-devel@googlegroups.com To unsubscribe from this group, send an email to sage-devel+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sage-devel URL: http://www.sagemath.org
[sage-devel] Re: evaluation of polynomials in several variables
I hope we agree that evaluation (meaning evaluation of all variables by some elements in a ring) should yield an element of the ring. I don't mind if subs should give back a polynomial in all cases. [Aside: Strangely this is not the case for symbolic expressions. I am sure there must have been a discussion on this and I missed it. E.g. f(x) = sin(x) f(1.).floor() does not work.] I agree that thats the only valid question here: is f(x=2,y=3) substitution or evaluation? The call syntax suggests evaluation, but keywords allow you to only substitute some variables. I'm tempted to say that since its not obvious we shouldn't have the function at all, that is, don't allow keyword arguments in _call_. No I am against changing this. For two reasons, when working with polynomials in variable names liks k, p. It is not always easy to remember which was the first and which was the second variable. Then it is very handy to pass keywords for evaluation - but still to expect a base_ring element. Instead I think we should check that all variables are evaluated. This would be consistent with the call f(2,3) which screams when the number of variables is not correct. Even better, we could check if the result is really a ring element after substitution, which is easy to do. E.g. I would allow f = x*(x+y) f(x=0) but not f(x=1) Chris. -- To post to this group, send an email to sage-devel@googlegroups.com To unsubscribe from this group, send an email to sage-devel+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sage-devel URL: http://www.sagemath.org
[sage-devel] Re: evaluation of polynomials in several variables
I hope we agree that evaluation (meaning evaluation of all variables by some elements in a ring) should yield an element of the ring. I don't mind if subs should give back a polynomial in all cases. [Aside: Strangely this is not the case for symbolic expressions. I am sure there must have been a discussion on this and I missed it. E.g. f(x) = sin(x) f(1.).floor() does not work.] I agree that thats the only valid question here: is f(x=2,y=3) substitution or evaluation? The call syntax suggests evaluation, but keywords allow you to only substitute some variables. I'm tempted to say that since its not obvious we shouldn't have the function at all, that is, don't allow keyword arguments in _call_. No I am against changing this. For two reasons, when working with polynomials in variable names liks k, p. It is not always easy to remember which was the first and which was the second variable. Then it is very handy to pass keywords for evaluation - but still to expect a base_ring element. Instead I think we should check that all variables are evaluated. This would be consistent with the call f(2,3) which screams when the number of variables is not correct. Even better, we could check if the result is really a ring element after substitution, which is easy to do. E.g. I would allow f = x*(x+y) f(x=0) but not f(x=1) Chris. -- To post to this group, send an email to sage-devel@googlegroups.com To unsubscribe from this group, send an email to sage-devel+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sage-devel URL: http://www.sagemath.org
[sage-devel] Re: evaluation of polynomials in several variables
I hope we agree that evaluation (meaning evaluation of all variables by some elements in a ring) should yield an element of the ring. I don't mind if subs should give back a polynomial in all cases. [Aside: Strangely this is not the case for symbolic expressions. I am sure there must have been a discussion on this and I missed it. E.g. f(x) = sin(x) f(1.).floor() does not work.] I agree that thats the only valid question here: is f(x=2,y=3) substitution or evaluation? The call syntax suggests evaluation, but keywords allow you to only substitute some variables. I'm tempted to say that since its not obvious we shouldn't have the function at all, that is, don't allow keyword arguments in _call_. No I am against changing this. For two reasons, when working with polynomials in variable names liks k, p. It is not always easy to remember which was the first and which was the second variable. Then it is very handy to pass keywords for evaluation - but still to expect a base_ring element. Instead I think we should check that all variables are evaluated. This would be consistent with the call f(2,3) which screams when the number of variables is not correct. Even better, we could check if the result is really a ring element after substitution, which is easy to do. E.g. I would allow f = x*(x+y) f(x=0) but not f(x=1) Chris. -- To post to this group, send an email to sage-devel@googlegroups.com To unsubscribe from this group, send an email to sage-devel+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sage-devel URL: http://www.sagemath.org
[sage-devel] evaluation of polynomials in several variables
Let f be a polynomial in two variables x and y over a ring R. Consider the following three commands i) f(2,3) ii) f(x=2,y=3) iii) f.subs(x=2,y=3) They give the same results but not the same type. i) gives an element in R while ii) and iii) are constant polynomials in two variables. Follinwg the documentation, i) and ii) should give an element in R while iii) is a polynomial. So something should be changed. The question is what. I would expect all three to give back elements of R. This is maybe a slightly non- canonical choice given that f(x=3) does not (and should not) give back a polynomial in one variable or an element in the quotient ring R[x,y]/ (x-3). But still I think that is what a naive user like me would expect when evaluating all variables. Note that for a polynomial in one variable all three are elements in R. The changes for i) in a __call__ of sage.rings.polynomial.multi_polynomial_libsingular.pyx were introduced in ticket #8502. I came across this issue in #10888. I propose to change at least so that ii), which is the __call__ method, does the same as i) - see attached patch. But the question is if one wants to change subs(). I figured that some people in this list may have an opinion on this. Chris. -- To post to this group, send an email to sage-devel@googlegroups.com To unsubscribe from this group, send an email to sage-devel+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sage-devel URL: http://www.sagemath.org
[sage-devel] trac login problems
Did anyone run into a similar problem : Everytime I would like to do something (like adding a patch, reviewing one...) on http://trac.sagemath.org/sage_trac/ it logs me out. And then I am not allowed to do it anymore. I can log in, though. Any idea ? Chris. -- To post to this group, send an email to sage-devel@googlegroups.com To unsubscribe from this group, send an email to sage-devel+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sage-devel URL: http://www.sagemath.org
[sage-devel] Re: trac login problems
Ok, it only happens in my office. Probably some add-on in firefox or some problem with the cookies... Anyway, it doesn't matter anymore. Chris. -- To post to this group, send an email to sage-devel@googlegroups.com To unsubscribe from this group, send an email to sage-devel+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sage-devel URL: http://www.sagemath.org
[sage-devel] Re: Incorrectly computes an elliptic curve isogeny
This is now ticket 8349. -- To post to this group, send an email to sage-devel@googlegroups.com To unsubscribe from this group, send an email to sage-devel+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sage-devel URL: http://www.sagemath.org
[sage-devel] Re: Incorrectly computes an elliptic curve isogeny
Yop, I will look into that tomorrow. Looks like a bug in the post_isomorphism, since E.isogeny(Pts[23]) gives the right map but to an isomorphic curve. I will open a ticket tomorrow. -- To post to this group, send an email to sage-devel@googlegroups.com To unsubscribe from this group, send an email to sage-devel+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sage-devel URL: http://www.sagemath.org
[sage-devel] Re: Sage 4.3.3.alpha0 released
Did you install the optional database before running the test? That changes which generators are returned for database curves. Yes, the optional database was installed before. Does that that mean that the lines should have a #something, because they are #random depending on #optional ? Chris. -- To post to this group, send an email to sage-devel@googlegroups.com To unsubscribe from this group, send an email to sage-devel+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sage-devel URL: http://www.sagemath.org
[sage-devel] Re: Sage 4.3.3.alpha0 released
Everything passes, except that I get the following errors in heegner.py on my openSuSE 11.1. They are harmless, as I get the -P as the generator. I don't know why. Chris. sage -t devel/sage/sage/schemes/elliptic_curves/heegner.py ** File /usr/local/sage/devel/sage/sage/schemes/elliptic_curves/ heegner.py, line 71: sage: E.gens() Expected: [(1 : 1 : 1)] Got: [(1 : -1 : 1)] ** File /usr/local/sage/devel/sage/sage/schemes/elliptic_curves/ heegner.py, line 73: sage: -3*E.gens()[0] Expected: (0 : 1 : 1) Got: (0 : -1 : 1) ** File /usr/local/sage/devel/sage/sage/schemes/elliptic_curves/ heegner.py, line 3576: sage: E.gens() Expected: [(2 : 1 : 1)] Got: [(2 : -2 : 1)] ** File /usr/local/sage/devel/sage/sage/schemes/elliptic_curves/ heegner.py, line 3586: sage: 2*E.gens()[0] Expected: (1 : 0 : 1) Got: (1 : -1 : 1) ** File /usr/local/sage/devel/sage/sage/schemes/elliptic_curves/ heegner.py, line 6211: sage: 6*E.gens()[0] Expected: (6 : -15 : 1) Got: (6 : 14 : 1) ** File /usr/local/sage/devel/sage/sage/schemes/elliptic_curves/ heegner.py, line 1409: sage: [g.alpha() for g in G] Expected: [1, 1/2*sqrt_minus_52 + 1, -1/2*sqrt_minus_52, 1/2*sqrt_minus_52 - 1] Got: [1, -1/2*sqrt_minus_52 - 1, 1/2*sqrt_minus_52, 1/2*sqrt_minus_52 - 1] ** File /usr/local/sage/devel/sage/sage/schemes/elliptic_curves/ heegner.py, line 1415: sage: sorted([g.alpha() for g in G]) Expected: [1, -1/2*sqrt_minus_52, 1/2*sqrt_minus_52 + 1, 1/2*sqrt_minus_52 - 1, 1/2*sqrt_minus_52 - 2, -1/2*sqrt_minus_52 - 2] Got: [1, 1/2*sqrt_minus_52, -1/2*sqrt_minus_52 - 1, 1/2*sqrt_minus_52 - 1, 1/2*sqrt_minus_52 - 2, -1/2*sqrt_minus_52 - 2] ** -- To post to this group, send an email to sage-devel@googlegroups.com To unsubscribe from this group, send an email to sage-devel+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sage-devel URL: http://www.sagemath.org
[sage-devel] sage keeps me warm
Sorry for the spam; but I thought I'd share it with you. We had a big problem with our heating in our house a few weeks ago, exactly when it is was so freezing cold in Nottingham that they were talking about the coldest winter. I imagined it is going to be a bit difficult to sleep when I could see my own breath inside my home. So I put my laptop in my bed and did a testall to warm up my bed. Sage has so many useful applications ! Chris. -- To post to this group, send an email to sage-devel@googlegroups.com To unsubscribe from this group, send an email to sage-devel+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sage-devel URL: http://www.sagemath.org
[sage-devel] Re: tutorial on Python functional programming for mathematicians
Thanks a lot for this tutorial. I think it would be great to have it included in the documentation. I did not know anything about functional programming before using sage. To a new mathematical user without python knowledge things like lambda = 4 SyntaxError: invalid syntax lambda? No object 'lambda' currently defined. are very odd. -- To post to this group, send an email to sage-devel@googlegroups.com To unsubscribe from this group, send an email to sage-devel+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sage-devel URL: http://www.sagemath.org
[sage-devel] problems in notebook
I noticed two problems in my notebooks in 4.1.2. Before I open new tickets I wanted to know if others have the same problem or if they have been reported already. * Typing in html $D1$ is good. renders without leaving the $-environment, i.e. as $D1 is good.$ The same does not happen with $D=1$ is good. * When I print a worksheet in a pdf or ps file, each line of output is twice there, once with additional line breaks once without. Chris --~--~-~--~~~---~--~~ To post to this group, send an email to sage-devel@googlegroups.com To unsubscribe from this group, send an email to sage-devel-unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sage-devel URL: http://www.sagemath.org -~--~~~~--~~--~--~---
[sage-devel] documentation issues
i have some questions and suggestion on the RestructuredText. I am a ReST-newbie and so maybe these things have been discussed before. * In one of my files i have a line power_series = series. This produces the full docstring of series to appear twice in the documentation, once under series and once under power_series. How can I exclude the alias ? * Generally I am very happy with the outputs of the documentation using sphinx. But there are some improvement that one could think about. For instance I think there are too many different fonts used, that is a bit ugly. More importantly I think that the examples and the warnings are more emphasized than the actual command that is documented. Also the commands and not well-seperated. To someone who is not used, this might look confusing. Of course, I have absolutely no idea if this can be changed or not. * The docstrings become much longer now that we have to add additional empty lines. This is not very nice when using foo? or tab- completion in the notebook. Also the `` `` are annoying there. Is it not possible that the printing of the docstring there is simplified ? * Where do we put references to books and articles ? Within the function or the header of the file ? With [XY]_ ? * Accents again. I know that we should not put them in the py-files. Could we have a predefined |eacute| maybe ? Chris. --~--~-~--~~~---~--~~ To post to this group, send email to sage-devel@googlegroups.com To unsubscribe from this group, send email to sage-devel-unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sage-devel URLs: http://www.sagemath.org -~--~~~~--~~--~--~---
[sage-devel] Re: Power series rings
sage: K.u = LaurentSeriesRing(QQ) sage: R.t = PowerSeriesRing(QQ) 3. coercion to R does not work (R(u) fails trying to coerce to QQ). I guess this is the same sort of problem as what I reported in trac #5468. chris. --~--~-~--~~~---~--~~ To post to this group, send email to sage-devel@googlegroups.com To unsubscribe from this group, send email to sage-devel-unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sage-devel URLs: http://www.sagemath.org -~--~~~~--~~--~--~---
[sage-devel] colours in trac
I wonder if a user can change the colours on the trac pages for patches. Being green-red colour-blind, I would prefer to swap, say, green for blue. Sorry if this question is not really a sage-devel question... Chris. --~--~-~--~~~---~--~~ 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://www.sagemath.org -~--~~~~--~~--~--~---