- 22 Apr, 2016 1 commit
-
-
Jeroen Demeyer authored
-
- 21 Apr, 2016 1 commit
-
-
Volker Braun authored
-
- 20 Apr, 2016 4 commits
-
-
Release Manager authored
Let us remove some bad uses of comparison to True or False. URL: http://trac.sagemath.org/20459 Reported by: chapoton Ticket author(s): Frédéric Chapoton Reviewer(s): Travis Scrimshaw
-
Release Manager authored
some problems (about future transition to py3) can be found using {{{ export PYTHONIOENCODING="utf-8" python -Qwarnall $(which sage-runtests) src/sage/combinat/*.py }}} let us try to correct a few of them. see also #18659 and #15995 URL: http://trac.sagemath.org/20468 Reported by: chapoton Ticket author(s): Frédéric Chapoton Reviewer(s): Travis Scrimshaw
-
Release Manager authored
here: {{{ sage: W=CoxeterGroup(('A1',['H',3])) }}} is not working. This comes from {{{ sage: from sage.groups.matrix_gps.coxeter_group import * sage: Z=CartanType(('A1',['H',3])) sage: CoxeterMatrixGroup(Z) }}} URL: http://trac.sagemath.org/20425 Reported by: chapoton Ticket author(s): Travis Scrimshaw Reviewer(s): Frédéric Chapoton
-
Travis Scrimshaw authored
-
- 19 Apr, 2016 4 commits
-
-
Frédéric Chapoton authored
-
Release Manager authored
Trac #20414: Add copy/__copy__ methods to CVXOPT, PPL, InteractiveLP backends, and __deepcopy__ to MixedIntegerLinearProgram and backends The COIN, CPLEX, GLPK, and Gurobi backends supply a `copy` method. But it's not documented as a backend interface method in `GenericBackend`, and the CVXOPT, PPL, InteractiveLP backends do not implement it. It is used by `MixedIntegerLinearProgram.__copy__`. The backend method should actually probably be called `__copy__` as well -- see https://docs.python.org/2/library/copy.html The branch on the ticket does this. We also add `__deepcopy__` methods to `MixedIntegerLinearProgram` and the backends. This fixes #15159, though the semantics of `copy` and `deepcopy` of a `MixedIntegerLinearProgram` remains questionable due to its interaction with `MIPVariable`; see #15159 and #19523. See also #20323 (in which copying a backend could be the basis for more diverse tests). URL: http://trac.sagemath.org/20414 Reported by: mkoeppe Ticket author(s): Matthias Koeppe Reviewer(s): Dima Pasechnik
-
Frédéric Chapoton authored
-
Frédéric Chapoton authored
-
- 18 Apr, 2016 3 commits
-
-
Frédéric Chapoton authored
-
Frédéric Chapoton authored
-
Matthias Köppe authored
-
- 17 Apr, 2016 5 commits
-
-
Release Manager authored
Some easy updates URL: http://trac.sagemath.org/20450 Reported by: vbraun Ticket author(s): Volker Braun Reviewer(s): François Bissey
-
Release Manager authored
In generic implementations of `f.quo_rem(g)`, an exception {{{#!python ArithmeticError: Nonunit leading coefficient }}} is raised as soon as the leading coefficient of `g` is not invertible. This was introduced by ticket #11593, and I mimicked the behavior in #16544. The change I propose is to try to compute the Euclidean division, and raise an exception {{{#!python ArithmeticError: division not exact (consider coercing to polynomials over the fraction field first) }}} when the computation is not possible. Then, `quo_rem` would produce less exceptions, and in particular give an answer each time the answer is not controversial (see below). '''Note on the controverse.''' There is a debate to know whether one should raise an exception when the division is not exact (as it is done for dense integer polynomials with the `NTL` implementation), or if one should silently return a result that has a mathematical meaning though it is not a Euclidean division (as it is done with the `flint` implementation). See #16276 as well as https://groups.google.com/d/msg /sage-devel/UVrx5CG4qA0/WUz2RItJtF8J for this debate. My proposition is to already implement a more capable algorithm, and not to wait for the debate to be closed. URL: http://trac.sagemath.org/16649 Reported by: bruno Ticket author(s): Bruno Grenet Reviewer(s): Frédéric Chapoton, Ralf Stephan
-
Volker Braun authored
The color default should work for single AND multiband images, so a tuple is a bad choice.
-
Release Manager authored
This ticket changes SageNB from a distribution to a normal Python package. This means unbundling everything which used to be part of the SageNB distribution. The package `webassets` is simply removed, since it doesn't seem to be used by anything in Sage or SageNB. [https://groups.google.com/forum/#!msg/sage- devel/fEeGgVWuk7I/nDOHbclqLUAJ This thread] indicates that `webassets` is used by the `newui` branch of SageNB but not in vanilla SageNB. So it has no reason being in Sage currently. '''New upstream tarballs''': * http://sage.ugent.be/www/jdemeyer/sage/sagenb-0.12.tar.bz2 * https://pypi.python.org/packages/source/B/Babel/Babel-2.2.0.tar.gz * https://pypi.python.org/packages/source/F/Flask/Flask-0.10.1.tar.gz * http://sage.ugent.be/www/jdemeyer/sage/Flask_AutoIndex-0.5.tar.gz (renamed `-` -> `_`) * http://sage.ugent.be/www/jdemeyer/sage/Flask_Babel-0.9.tar.gz (renamed `-` -> `_`) * http://sage.ugent.be/www/jdemeyer/sage/Flask_OldSessions-0.10.tar.gz (renamed `-` -> `_`) * http://sage.ugent.be/www/jdemeyer/sage/Flask_OpenID-1.2.5.tar.gz (renamed `-` -> `_`) * http://sage.ugent.be/www/jdemeyer/sage/Flask_Silk-0.2.tar.gz (renamed `-` -> `_`) * https://pypi.python.org/packages/source/i/itsdangerous/itsdangerous-0. 24.tar.gz * http://sage.ugent.be/www/jdemeyer/sage/python_openid-2.2.5.tar.gz (renamed `-` -> `_`) * http://sage.ugent.be/www/jdemeyer/sage/pytz-2016.3.tar.bz2 (upstream version with sanitized permissions) * https://pypi.python.org/packages/source/s/speaklater/speaklater-1.3.ta r.gz * https://pypi.python.org/packages/source/T/Twisted/Twisted-15.5.0.tar.bz2 * https://pypi.python.org/packages/source/W/Werkzeug/Werkzeug-0.11.5.tar .gz * https://pypi.python.org/packages/source/z/zope.interface/zope.interfac e-4.1.3.tar.gz URL: http://trac.sagemath.org/14840 Reported by: felixs Ticket author(s): Jeroen Demeyer Reviewer(s): Salvatore Stella, Dima Pasechnik
-
Matthias Köppe authored
-
- 16 Apr, 2016 12 commits
-
-
Release Manager authored
This enables the use of fpylll from within Sage. tarball: http://trac.sagemath.org/raw- attachment/ticket/20291/libfplll-20160331.tar.gz URL: http://trac.sagemath.org/20291 Reported by: malb Ticket author(s): Martin Albrecht Reviewer(s): François Bissey, Jeroen Demeyer
-
Release Manager authored
By implementing a non-recursive iterator, we avoid some overhead. With this branch, we get the following: {{{ sage: I = IntegerVectors(12,7) sage: %timeit list(I.__iter__()) 10 loops, best of 3: 20.8 ms per loop sage: I = WeightedIntegerVectors(12, [4,1,2,2]) sage: %timeit list(I.__iter__()) 1000 loops, best of 3: 291 µs per loop sage: I = WeightedIntegerVectors(12, [2,1,1,2]) sage: %timeit list(I.__iter__()) 1000 loops, best of 3: 556 µs per loop sage: I = WeightedIntegerVectors(17, [2,1,1,2,1,1,2]) sage: %timeit list(I.__iter__()) 10 loops, best of 3: 56.4 ms per loop sage: I = WeightedIntegerVectors(26, [2,1,1,2,1,1,2]) sage: %timeit list(I.__iter__()) 1 loop, best of 3: 443 ms per loop }}} versus the current version: {{{ sage: I = IntegerVectors(12,7) sage: %timeit list(I.__iter__()) 10 loops, best of 3: 50.3 ms per loop sage: %timeit list(I.__iter__()) The slowest run took 8.13 times longer than the fastest. This could mean that an intermediate result is being cached. 1000 loops, best of 3: 301 µs per loop sage: I = WeightedIntegerVectors(12, [2,1,1,2]) sage: %timeit list(I.__iter__()) 1000 loops, best of 3: 554 µs per loop sage: I = WeightedIntegerVectors(17, [2,1,1,2,1,1,2]) sage: %timeit list(I.__iter__()) 10 loops, best of 3: 68.1 ms per loop sage: I = WeightedIntegerVectors(26, [2,1,1,2,1,1,2]) sage: %timeit list(I.__iter__()) 1 loop , best of 3: 528 ms per loop }}} URL: http://trac.sagemath.org/20166 Reported by: tscrim Ticket author(s): Travis Scrimshaw Reviewer(s): Vincent Delecroix
-
Jeroen Demeyer authored
-
Vincent Delecroix authored
-
Volker Braun authored
-
Volker Braun authored
-
Release Manager authored
On the online documentation for setting up a fork, the D is left off of Detail. http://doc.sagemath.org/html/en/developer/sagenb/set_up_fork.html#set- up-fork I plan on fixing this to learn how to use the system. URL: http://trac.sagemath.org/20290 Reported by: tara Ticket author(s): Tara Fife Reviewer(s): Stefan van Zwam
-
Release Manager authored
We need to support running both sagenb and ipynb notebooks. Moreover, we need to support exporting sagenb to ipynb to ease the transition. Auto-detection of existing sagenb notebooks and smartly offering to upgrade would be nice as well. URL: http://trac.sagemath.org/19881 Reported by: iandrus Ticket author(s): Ivan Andrus Reviewer(s): Volker Braun
-
Release Manager authored
In the symbolic ring, cmp implements the print comparison which is probably not what you envisioned: {{{ sage: cmp(1, sqrt(2)) # mathematically correct, uses rich comparison -1 sage: cmp(SR(1), sqrt(2)) # unexpectedly, you get the print sort order 1 sage: cmp(log(8), 3*log(2)) -1 }}} Everybody who coerces to same parents internally before comparing trips over this, for example the real lazy field: {{{ sage: RLF(1) < RLF(sqrt(2)) False }}} This also makes `RealSet` unusable with symbolics: {{{ sage: RealSet((0, pi),[pi, pi],(pi,4)) [pi, 4) sage: RealSet((0, pi),[0, pi],(pi,4)) [pi, 4) sage: RealSet((0, pi),[0, 3.5],(pi,4)) (pi, 4) }}} URL: http://trac.sagemath.org/16397 Reported by: vbraun Ticket author(s): Volker Braun, Ralf Stephan Reviewer(s): Ralf Stephan, Volker Braun
-
Volker Braun authored
-
Volker Braun authored
-
Volker Braun authored
-
- 15 Apr, 2016 10 commits
-
-
Release Manager authored
The functions `inject_on`/`inject_off` are most likely used by nobody: they are superseded by the `K.<x> = ...` syntax and not all constructors are supported. URL: http://trac.sagemath.org/20442 Reported by: jdemeyer Ticket author(s): Jeroen Demeyer Reviewer(s): Frédéric Chapoton
-
Release Manager authored
`generic_graph.py` contains several functions where documentation says that there are several algorithms available. However there is no explanation of their difference. Is some faster, other uses less memory? Better for sparse/dense graphs? As an example `flow()` has three algorithm and no clear explanation when to choose `FF` or `LP`. URL: http://trac.sagemath.org/19599 Reported by: jmantysalo Ticket author(s): Jori Mäntysalo Reviewer(s): Frédéric Chapoton
-
Release Manager authored
libSingular functions require a ring parameter set. But for some functions the ring parameter is redundant. Martin Albrecht answers to this issue: We could do this: - if no ring is given, we try to find one as we do currently. - if that fails because the inputs are not polynomials of any kind, we could use a dummy ring. We implement this. URL: http://trac.sagemath.org/19084 Reported by: klee Ticket author(s): Kwankyu Lee Reviewer(s): Volker Braun
-
Release Manager authored
I have frequently encountered computer setups where one has access to a Sage installation locally, but Magma is only installed in a remote machine (say with address 'remote'). Typically one either: 1) Logs into 'remote' via ssh and does some computation in Magma. 2) uses the ssh command {{{ $> ssh -t remote 'magma' }}} to pretend having magma installed locally. Actually Sage has functionality to use (2) in its interface with Magma, but it is currently broken and not advertised. It presumes that 'remote' also has sage installed (in fact it presumes that sage-native-execute is in the default PATH), for example. This ticket fixes this, and makes a command like {{{ sage: magma = Magma(server = 'remote', command = 'magma-myversion') }}} work, and provide the user with an interface to a particular version of Magma installed in 'remote'. URL: http://trac.sagemath.org/20388 Reported by: mmasdeu Ticket author(s): Marc Masdeu Reviewer(s): Nils Bruin, Vincent Delecroix
-
Release Manager authored
Add a function to see if a poset is series-parallel (or "N-free"). First wait for #19659 to get closed. Series-parallel decomposition is just recursive applying of `connected_components()` and `ordinal_sum_decomposition()`. URL: http://trac.sagemath.org/19215 Reported by: jmantysalo Ticket author(s): Jori Mäntysalo Reviewer(s): Frédéric Chapoton
-
Release Manager authored
The definition allows a choice of a general c,,ij,, matrix such that c,,ij,, + c,,ji,, = 1 for all `i != j`. We also perform some cleanup: - Remove the trailing whitespace at the end of the monomial printing. - Only needing to input the dominant weight. - Better handling of dictionaries in monomial methods. URL: http://trac.sagemath.org/18895 Reported by: tscrim Ticket author(s): Travis Scrimshaw Reviewer(s): Ben Salisbury
-
Release Manager authored
{{{ sage: x,y=polygen(ZZ,'x,y') sage: p=x**2-y**2 sage: p.parent() Multivariate Polynomial Ring in x, y over Integer Ring sage: factor(p) (x - y) * (x + y) sage: factor(p)[0][0].parent() Multivariate Polynomial Ring in x, y over Multivariate Polynomial Ring in x, y over Integer Ring }}} but no problem over QQ URL: http://trac.sagemath.org/20435 Reported by: chapoton Ticket author(s): Frédéric Chapoton Reviewer(s): Bruno Grenet
-
Frédéric Chapoton authored
-
Frédéric Chapoton authored
-
Travis Scrimshaw authored
-