Re: [sage-devel] Bug in modp sparse matrix multiply
Thanks, I submitted and fixed the bug here (in case anyone wants to review it): https://trac.sagemath.org/ticket/23669 On Sunday, August 20, 2017 at 9:11:08 PM UTC-4, vdelecroix wrote: > > Dear Dan, > > Thanks for the report! This is indeed a bug. If you want to go further > and fix the bug yourself, the procedure is described here > > http://doc.sagemath.org/html/en/developer/ > > Otherwise I will open the relevant ticket. > > Vincent > > On 20/08/2017 19:59, Daniel Roche wrote: > > Hi sagers, > > > > First let me say thanks for the great piece of software that is sage. > You > > all do a tremendous job and maybe don't get thanked enough. > > > > There appears to be a bug in sparse matrix multiplication over small > finite > > fields: > > > > sage: p = next_prime(2**15); p > > 32771 > > sage: M = Matrix(GF(p), 1,3, lambda i,j: -1, sparse=True); M > > [32770 32770 32770] > > sage: M*M.transpose() > > [32738] # INCORRECT, should be 3 > > sage: M*M.transpose() + 2**32 > > [3] # it was off by 2^32, hmmm... > > > > Being off by 2^32 hints that there is an integer overflow or signedness > > issue, and indeed I believe the culprit is in the _matrix_times_matrix_ > > method on line 387 of matrix_modn_sparse.pyx > > < > https://github.com/sagemath/sage/blob/master/src/sage/matrix/matrix_modn_sparse.pyx#L387>, > > > > where a cdef int s is added up without reducing modulo p. > > > > I am currently running release 8.0 on a 64-bit Debian machine. I had > some > > old versions of sage lying around and the bug seems to be present in > > versions going back at least to 5.6; it's not a recent change. > > > > Thanks for taking a look! > > > > -Dan > > > -- 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: Size of Sage
Using some other definition of Change (ratio of 2017 sloc vs 2011 sloc, whenever defined). *Directory 2011 2017 Change* server 12093 1 0.000 gsl 3919 83 0.021 ext 7260 346 0.048 matrix 31540 19675 0.624 symbolic8389 5563 0.663 media 219 225 1.027 games 1608 1755 1.091 finance 1736 1904 1.097 interacts 971 1073 1.105 misc20517 23792 1.160 libs24475 29328 1.198 crypto 10686 13027 1.219 interfaces 18006 22776 1.265 modules 9920 12604 1.271 rings 88903 114242 1.285 logic 2074 2716 1.310 sandpiles 3879 5104 1.316 structure 7093 9620 1.356 sets3003 4073 1.356 graphs 39815 54461 1.368 quadratic_forms 4323 6037 1.396 plot11961 17403 1.455 top_dir 197 297 1.508 calculus3911 5908 1.511 tests 1435 2338 1.629 groups 11971 19508 1.630 schemes 47747 81663 1.710 monoids 1465 2530 1.727 modular 31019 61951 1.997 stats 1370 2837 2.071 databases 2647 5562 2.101 geometry17577 38966 2.217 functions 5670 13258 2.338 numerical 4798 11814 2.462 coding 6364 16132 2.535 lfunctions 906 2369 2.615 probability 275 720 2.618 categories 12775 35389 2.770 algebras8150 23008 2.823 homology5249 15111 2.879 combinat72913 224064 3.073 parallel308 2094 6.799 tensor 959 15348 16.004 docs0 92 sat 0 799 typeset 0 1211 knots 0 2112 quivers 0 2438 data_structures 0 3246 arith 0 3531 doctest 0 3625 game_theory 0 3781 repl0 5295 dynamics0 8550 matroids0 14640 manifolds 0 36399 Happy 10^6 SageMath! f On Monday, August 21, 2017 at 5:46:53 PM UTC-4, David Roe wrote: > > Sage has recently passed 1,000,000 lines of code. > > I thought people might be interested in how Sage has changed in the last > six years. The following compares Sage 4.8.alpha5 [1] with a late beta of > Sage 8.0. > > Directory 20112017Change > > server 12093 1 -12092 > matrix 31540 19675 -11865 > ext 7260346 -6914 > gsl 391983 -3836 > symbolic83895563-2826 > media 219 225 +6 > docs0 92 +92 > top_dir 197 297 +100 > interacts 971 1073+102 > games 16081755+147 > finance 17361904+168 > probability 275 720 +445 > logic 20742716+642 > sat 0 799 +799 > tests 14352338+903 > monoids 14652530+1065 > sets30034073+1070 > typeset 0 1211+1211 > sandpiles 38795104+1225 > lfunctions 906 2369+1463 > stats 13702837+1467 > quadratic_forms 43236037+1714 > parallel308 2094+1786 > calculus39115908+1997 > knots 0 2112+2112 > crypto 10686 13027 +2341 > quivers 0 2438+2438 > structure 70939620+2527 > modules 992012604 +2684 > databases 26475562+2915 > data_structures 0 3246+3246 > misc20517 23792 +3275 > arith 0 3531+3531 > doctest 0 3625+3625 > game_theory 0 3781+3781 > interfaces 18006 22776 +4770 > libs24475 29328 +4853 > repl0 5295+5295 > plot11961 17403 +5442 > numerical 479811814 +7016 > groups 11971 19508 +7537 > functions 567013258 +7588 > dynamics0 8550+8550 > coding 636416132 +9768 > homology
[sage-devel] Size of Sage
Sage has recently passed 1,000,000 lines of code. I thought people might be interested in how Sage has changed in the last six years. The following compares Sage 4.8.alpha5 [1] with a late beta of Sage 8.0. Directory 20112017Change server 12093 1 -12092 matrix 31540 19675 -11865 ext 7260346 -6914 gsl 391983 -3836 symbolic83895563-2826 media 219 225 +6 docs0 92 +92 top_dir 197 297 +100 interacts 971 1073+102 games 16081755+147 finance 17361904+168 probability 275 720 +445 logic 20742716+642 sat 0 799 +799 tests 14352338+903 monoids 14652530+1065 sets30034073+1070 typeset 0 1211+1211 sandpiles 38795104+1225 lfunctions 906 2369+1463 stats 13702837+1467 quadratic_forms 43236037+1714 parallel308 2094+1786 calculus39115908+1997 knots 0 2112+2112 crypto 10686 13027 +2341 quivers 0 2438+2438 structure 70939620+2527 modules 992012604 +2684 databases 26475562+2915 data_structures 0 3246+3246 misc20517 23792 +3275 arith 0 3531+3531 doctest 0 3625+3625 game_theory 0 3781+3781 interfaces 18006 22776 +4770 libs24475 29328 +4853 repl0 5295+5295 plot11961 17403 +5442 numerical 479811814 +7016 groups 11971 19508 +7537 functions 567013258 +7588 dynamics0 8550+8550 coding 636416132 +9768 homology524915111 +9862 tensor 959 15348 +14389 matroids0 14640 +14640 graphs 39815 54461 +14646 algebras815023008 +14858 geometry17577 38966 +21389 categories 12775 35389 +22614 rings 88903 114242 +25339 modular 31019 61951 +30932 schemes 47747 81663 +33916 manifolds 0 36399 +36399 combinat72913 224064 +151151 python and cython: 1003911 (99.16%) cpp:7004 (0.69%) ansic: 1479 (0.15%) Total Physical Source Lines of Code (SLOC)= 1,012,394 Development Effort Estimate, Person-Years (Person-Months) = 286.19 (3,434.22) (Basic COCOMO model, Person-Months = 2.4 * (KSLOC**1.05)) Schedule Estimate, Years (Months) = 4.60 (55.15) (Basic COCOMO model, Months = 2.5 * (person-months**0.38)) Estimated Average Number of Developers (Effort/Schedule) = 62.27 Total Estimated Cost to Develop = $ 38,659,716 (average salary = $56,286/year, overhead = 2.40). Keep up the good work! David [1] http://sagemath.blogspot.com/2011/12/how-big-is-core-sage-library.html -- 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.
Re: [sage-devel] Re: Sage 8.0 Build Error on MacOS, [mpir-3.0.0.p0] Error building MPIR.
On Monday, August 21, 2017 at 4:15:29 PM UTC+1, Michael Frey wrote: > > What is the best way to do this? The file is extracted from the > mpir-3.0.0.tar.bz2 every time make is run. > the standard way would be to add the patch removing this file (which one exactly, there are few files named so?) build/pkgs/mpir/patches/ > On Wednesday, August 2, 2017 at 5:41:01 PM UTC-4, Bill Hart wrote: >> >> The only workaround I'm currently aware of is to remove the offending >> addmul_1.asm file. It is to do with our use of jump tables. >> >> -- 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.
Re: [sage-devel] Senseless leading_ methods introduced on all matrices
On Sunday, August 20, 2017 at 12:02:32 PM UTC-5, John Cremona wrote: > > > Don't get too carried away with thinking up ways in which users might > conceivably get confused! The rings "matrices over polynomials over > F" and "polynomials over matrices over F" are isomorphic but not the > same. > I think a really good example of this is the four isomorphic-but-not-identical: ZZ['x']['y'] ZZ['y']['x'] ZZ['x,y'] ZZ['y,x'] Each will behave in slightly different ways with respect to the usual polynomial methods. Best, Travis -- 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.
Re: [sage-devel] Re: Sage 8.0 Build Error on MacOS, [mpir-3.0.0.p0] Error building MPIR.
What is the best way to do this? The file is extracted from the mpir-3.0.0.tar.bz2 every time make is run. On Wednesday, August 2, 2017 at 5:41:01 PM UTC-4, Bill Hart wrote: > > The only workaround I'm currently aware of is to remove the offending > addmul_1.asm file. It is to do with our use of jump tables. > > >>> -- 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.
Re: [sage-devel] Re: sage -docbuild useless
No problem, I may have found a bug because of it. On Monday, August 21, 2017 at 4:09:08 PM UTC+2, Daniel Krenn wrote: > > On 2017-08-21 15:08, Ralf Stephan wrote: > > Ah the citations need a make and will not compile with a simple sage > > -docbuild. So it really is useless and should be disabled to not confuse > > people like me. > > I am strongly against disabling "sage -docbuild": When developing and > only changing e.g. one file, then it takes ages for "make doc" to > complete, whereas "sage -docbuild ..." finishes within seconds. > > -- 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.
Re: [sage-devel] Re: sage -docbuild useless
On 2017-08-21 15:08, Ralf Stephan wrote: > Ah the citations need a make and will not compile with a simple sage > -docbuild. So it really is useless and should be disabled to not confuse > people like me. I am strongly against disabling "sage -docbuild": When developing and only changing e.g. one file, then it takes ages for "make doc" to complete, whereas "sage -docbuild ..." finishes within seconds. -- 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: sage -docbuild useless
Ah the citations need a make and will not compile with a simple sage -docbuild. So it really is useless and should be disabled to not confuse people like me. Regards, On Monday, August 21, 2017 at 3:05:14 PM UTC+2, Ralf Stephan wrote: > > This is peculiar. When I do 'make doc-clean; sage -docbuild reference' > then the abovementioned reference will not compile. But with 'make > doc-clean; make doc' in a plain develop branch, then add the reference, > finally 'sage -docbuild reference' can compile it. It appears a successful > 'make doc' sets something up that is necessary but is deleted with 'make > doc-clean'. > -- 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: sage -docbuild useless
This is peculiar. When I do 'make doc-clean; sage -docbuild reference' then the abovementioned reference will not compile. But with 'make doc-clean; make doc' in a plain develop branch, then add the reference, finally 'sage -docbuild reference' can compile it. It appears a successful 'make doc' sets something up that is necessary but is deleted with 'make doc-clean'. -- 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.
Re: [sage-devel] Re: sage -docbuild useless
> On 21/08/2017, at 20:14, Dima Pasechnikwrote: > > > > On Monday, August 21, 2017 at 9:06:21 AM UTC+1, Ralf Stephan wrote: > Hi, > I just had made a rst document in reference that built nicely with sage > -docbuild. It fails with make doc. I consider it a serious bug because it > makes it impossible to refer to other refman documents. Am I missing > something? > > Example: In reference/calculus/index.rst I can refer to :doc:`polynomial ring > elements ` and it works fine with sage -docbuild > reference. make doc fails. > > does simply doing make work? > > (there is no 'doc' target in the makefile, so I don't quite see what 'make > doc' is meant to do) > Yes there is and it just depends on doc-html: grep doc: build/make/* build/make/Makefile:doc: doc-html build/make/deps:doc: doc-html -- 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: sage -docbuild useless
On Monday, August 21, 2017 at 9:06:21 AM UTC+1, Ralf Stephan wrote: > > Hi, > I just had made a rst document in reference that built nicely with sage > -docbuild. It fails with make doc. I consider it a serious bug because it > makes it impossible to refer to other refman documents. Am I missing > something? > > Example: In reference/calculus/index.rst I can refer to :doc:`polynomial > ring elements ` and it works fine with sage > -docbuild reference. make doc fails. > does simply doing make work? (there is no 'doc' target in the makefile, so I don't quite see what 'make doc' is meant to do) -- 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] sage -docbuild useless
Hi, I just had made a rst document in reference that built nicely with sage -docbuild. It fails with make doc. I consider it a serious bug because it makes it impossible to refer to other refman documents. Am I missing something? Example: In reference/calculus/index.rst I can refer to :doc:`polynomial ring elements ` and it works fine with sage -docbuild reference. make doc fails. -- 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.
Re: [sage-devel] nbconvert new dependencies...
A maintainer removed pandoc from the dependencies of pandocfilters. pandoc and all the haskell stuff has gone from my dependency tree for nbconvert. There is still pandocfilters though. > On 20/08/2017, at 20:26, Volker Braunwrote: > > Afaik nbconvert always dependend on pandoc for certain types of output (like > PDF). Just like LaTeX (which is also a dependency), users have to have > typesetting tools installed. > > > > On Sunday, August 20, 2017 at 9:51:37 AM UTC+2, François Bissey wrote: > Hi all, > > I am bit concerned by the new version of nbconvert released upstream (5.2.1). > Sage currently uses 4.2.0 as a standard package. > nbconvert now uses pandoc which is an haskell package. > That’s what my upgrade path for nbconvert, from zero haskell on the system, > looks like in Gentoo: > [ebuild N~] dev-python/testpath-0.3.1::gentoo USE="-doc {-test}" > PYTHON_TARGETS="python2_7 python3_4 python3_6 -python3_5" 90 KiB > [ebuild N ] dev-python/bleach-1.5.0::gentoo USE="{-test}" > PYTHON_TARGETS="python2_7 python3_4 python3_6 (-pypy) (-pypy3) (-python3_5)" > 36 KiB > [ebuild N ] dev-lang/ghc-7.10.3:0/7.10.3::gentoo USE="gmp -binary -doc > -ghcbootstrap -ghcmakebinary" 122,696 KiB > [ebuild N ] app-admin/haskell-updater-1.2.10::gentoo 26 KiB > [ebuild N ] dev-haskell/cabal-1.22.8.0:0/1.22.8.0::gentoo USE="-profile > {-test}" 397 KiB > [ebuild N ] dev-haskell/transformers-0.4.3.0:0/0.4.3.0::gentoo > USE="-doc -hscolour -profile" 0 KiB > [ebuild N ] dev-haskell/data-default-class-0.0.1:0/0.0.1::gentoo > USE="-doc -hscolour -profile" 2 KiB > [ebuild N ] dev-haskell/syb-0.4.4:0/0.4.4::gentoo USE="-doc -hscolour > -profile {-test}" 39 KiB > [ebuild N ] dev-haskell/old-locale-1.0.0.7:0/1.0.0.7::gentoo USE="-doc > -hscolour -profile" 4 KiB > [ebuild N ] dev-haskell/stm-2.4.2:0/2.4.2::gentoo USE="-doc -hscolour > -profile" 10 KiB > [ebuild N ] dev-haskell/binary-0.7.6.1:0/0.7.6.1::gentoo USE="-doc > -hscolour -profile {-test}" 0 KiB > [ebuild N ] dev-haskell/zlib-0.5.4.2:0/0.5.4.2::gentoo USE="-doc > -hscolour -profile" 125 KiB > [ebuild N ] dev-haskell/random-1.0.1.1-r1:0/1.0.1.1::gentoo USE="-doc > -hscolour -profile" 9 KiB > [ebuild N ] dev-haskell/primitive-0.5.1.0:0/0.5.1.0::gentoo USE="-doc > -hscolour -profile" 11 KiB > [ebuild N ] dev-haskell/dlist-0.7.1.2:0/0.7.1.2::gentoo USE="-doc > -hscolour -profile {-test}" 7 KiB > [ebuild N ] dev-haskell/extensible-exceptions-0.1.1.4:0/0.1.1.4::gentoo > USE="-doc -hscolour -profile" 9 KiB > [ebuild N ] dev-haskell/base64-bytestring-1.0.0.1:0/1.0.0.1::gentoo > USE="-doc -hscolour -profile {-test}" 9 KiB > [ebuild N ] dev-haskell/unix-compat-0.4.1.3:0/0.4.1.3::gentoo USE="-doc > -hscolour -old-time -profile" 13 KiB > [ebuild N ] dev-haskell/digest-0.0.1.2:0/0.0.1.2::gentoo USE="-doc > -hscolour -profile" 4 KiB > [ebuild N ] > dev-haskell/bytestring-builder-0.10.6.0.0:0/0.10.6.0.0::gentoo > USE="-profile" 44 KiB > [ebuild N ] dev-haskell/utf8-string-0.3.8:0/0.3.8::gentoo USE="-doc > -hscolour -profile" 9 KiB > [ebuild N ] dev-haskell/deepseq-generics-0.1.1.2:0/0.1.1.2::gentoo > USE="-doc -hscolour -profile {-test}" 6 KiB > [ebuild N ] dev-haskell/text-1.2.2.1:0/1.2.2.1::gentoo USE="-doc > -hscolour -profile {-test}" 147 KiB > [ebuild N ] dev-haskell/mtl-2.2.1-r1:0/2.2.1::gentoo USE="-doc > -hscolour -profile" 16 KiB > [ebuild N ] dev-haskell/vector-0.10.12.3:0/0.10.12.3::gentoo > USE="boundschecks -doc -hscolour -internalchecks -profile {-test} > -unsafechecks" 102 KiB > [ebuild N ] dev-haskell/old-time-1.1.0.3-r1:0/1.1.0.3::gentoo USE="-doc > -hscolour -profile" 73 KiB > [ebuild N ] dev-haskell/sha-1.6.4.2:0/1.6.4.2::gentoo USE="-doc -exe > -hscolour -profile {-test}" 2,652 KiB > [ebuild N ] dev-haskell/haddock-library-1.2.1:0/1.2.1::gentoo USE="-doc > -hscolour -profile {-test}" 38 KiB > [ebuild N ] dev-haskell/async-2.0.1.4:0/2.0.1.4::gentoo USE="-doc > -hscolour -profile {-test}" 9 KiB > [ebuild N ] > dev-haskell/data-default-instances-base-0.0.1:0/0.0.1::gentoo USE="-doc > -hscolour -profile" 2 KiB > [ebuild N ] > dev-haskell/data-default-instances-dlist-0.0.1:0/0.0.1::gentoo USE="-doc > -hscolour -profile" 2 KiB > [ebuild N ] > dev-haskell/data-default-instances-containers-0.0.1:0/0.0.1::gentoo > USE="-doc -hscolour -profile" 2 KiB > [ebuild N ] > dev-haskell/data-default-instances-old-locale-0.0.1:0/0.0.1::gentoo > USE="-doc -hscolour -profile" 2 KiB > [ebuild N ] dev-haskell/tf-random-0.5:0/0.5::gentoo USE="-profile" 19 > KiB > [ebuild N ] dev-haskell/parsec-3.1.9-r1:0/3.1.9::gentoo USE="-doc > -hscolour -profile {-test}" 29 KiB > [ebuild N ] dev-haskell/hashable-1.2.4.0:0/1.2.4.0::gentoo USE="-doc > -hscolour -profile {-test}"