Hi Franco,
Franco Saliola wrote:
Does Sage currently include any functionality similar to the gfun
package in Maple?
The sage library itself does not, but Manuel Kauers et al.'s ore_algebra
package provides most of the features of gfun (everything except for the
ability to automatically
R. Andrew Ohana a écrit :
To push the git branch
1) go into your preferences in trac; there is a new tab for adding ssh keys
- add an ssh key
I don't seem to manage to authenticate with the ssh key I uploaded. Here is the
log I get by running ssh -v manually:
OpenSSH_6.2p2 Debian-6,
R. Andrew Ohana wrote:
It's like github in that there is no shell access and everyone is under the
same username 'git'.
If you do
ssh -v -p g...@trac.sagemath.org
It should display the repositories you have read and/or write access to (in
this case it should just be the sage
R. Andrew Ohana wrote:
Ok, this should be fixed now.
It works, thanks!
--
Marc
--
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
R. Andrew Ohana a écrit :
1) go into your preferences in trac; there is a new tab for adding ssh keys
- add an ssh key
2) then do
git remote add trac ssh://g...@trac.sagemath.org:/sage.git
git push trac local/branch/name:u/TracUsername/remote/branch/name
If anyone likes to
Jason Grout wrote:
You might be interested in TeXMacs:
http://www.texmacs.org/tmweb/home/welcome.en.html
There once was a plugin for Sage that Mike Hansen wrote that let you do
Sage computations. I don't know if the plugin still works.
Yes, it does, although it is not as powerful as some
Simon King wrote:
I think quite often one is in a situation that one has two different
sets (rings, groups, ...) S1, S2, such that there is only one action
of
S1 on S2 from the left, and thus if one has s1 from S1 and s2 from S2,
then s1*s2 is not ambiguous.
I guess it depends what exactly
Hi,
Simon King wrote:
I think quite often one is in a situation that one has two different
sets (rings, groups, ...) S1, S2, such that there is only one action
of S1 on S2 from the left, and thus if one has s1 from S1 and s2
from S2, then s1*s2 is not ambiguous.
I guess it depends what
Simon King a écrit :
Sage has both left and right actions. I would need to look up the
details, but it is no problem to implement a right action of S2 on S1
rather than a left action of S1 on S2. Since the mathematical property
of being an action is not relevant in the implementation, you
Hi,
Sage happily coerces floating-point numbers (e.g., elements of RR) into
intervals (e.g., elements of RIF), subject to some conditions on the
precision of the source and destination rings.
The relevant portion of the coercion graph looks like this:
( +--- RDF )
Vincent Delecroix a écrit :
This is clearly what we want. If you have an operation involving
several real numbers with different precisions then you want that the
result has the least precision.
And in analogous situations where each precision corresponds to a well-
defined ring, the idea
Hi,
Jan Groenewald wrote:
It might be the é in your path, though \xc3 is something else:
In [1]: print u'\xc3'
Ã
0xC3 is the first byte of the UTF-8 encoding of 'é'.
--
Marc
--
You received this message because you are subscribed to the Google Groups
sage-devel group.
To unsubscribe from
Hi Nathann,
Nathann Cohen wrote:
def TD(k,n)
1) does there exist a OA(k,n,2) ? If so, return it
2) does there exist a MOLS(n, k-2) ? If so, return it
3) Otherwise, try to see if some TD-specific construction is available
for this set of parameters.
def OA(k,n):
1) does there exist a
Hello everyone,
The very convenient magic function %edit has been broken more or less
since sage-5.8. A trivial fix is available in the git branch
trac:u/mmezzarobba/fix_percent_edit
It would be nice if someone could review it before sage-6.0 is released!
See
According to the docstring of PolynomialRing(), the base ring of a
polynomial ring has to be commutative. However, it is clearly possible
to create _univariate_ polynomial rings over non-commutative rings. Do
you know of any code that relies on the assumption that the base ring is
commutative?
As noticed by Paul Zimmermann, http://www.sagemath.org/doc/ still points
to the documentation of Sage 5.13. For regular manuals, it shouldn't
make any difference until sage-6.1 is released, however the developer
guide is out of date.
--
Marc
--
You received this message because you are
Vincent Delecroix wrote:
Does polynomial over non-commutative ring make sense ? Because in that
context axbx is not abx^2. Depending on what you call polynomial, they
may or may not form a ring.
Just to clarify, I'm asking about polynomials over a non-commutative
rings but with an
Jeroen Demeyer wrote:
OK, thanks, at least I understand the issue now. Somehow I couldn't
find this very simple explanation on the other long thread about
dependencies.
I'm not sure which of the threads about dependencies you are referring
to, but Volker gave the same example (and more) in
Nils Bruin wrote:
Here is something I think is really a bug:
sage: parent(RealField(200)(1) + 1e-20)
Real Field with 53 bits of precision
Yes. And I'd say the behavior of RealField(200)(RR(1e-20))) is a bug as
well (the same bug in fact).
So I think there are two different issues here:
1.
Robert Bradshaw wrote:
FWIW, the problem with putting literals in another field, like
RealLazyField, is what to do when doing arithmetic like 1.2 + 1.7 one
wants arithmetic with reals of unspecified parent to be fast. The
literalness of floating point literals is supposed to just affect
Ralf Stephan wrote:
Please make your comments on the design while it's baking.
http://trac.sagemath.org/ticket/15714
Just some quick thoughts.
To me most of the features you suggest look like a special case of what
is already implemented in Manuel Kauers et al.'s ore_algebra package--
which
R. Andrew Ohana wrote:
The Sage repository should not contain binary files nor non-sage
specific source code, so naturally cloning the sage repository would
not include compressed tarballs of upstream code.
Just an idea, but what you you think of embedding pointers to the
tarballs via
Ralf Stephan wrote:
Looking forward to ore_algebra. If that package link were available
now I would start using it immediately, but the page was under
construction.
The direct link that was posted to sage-devel a few month ago still
seems valid:
Volker Braun wrote:
Also, git annex is written in Haskell... want to make that a Sage
dependency?
No, I don't! I'm certainly not saying that git-annex should be required
by Sage. I do believe it could be convenient for developers, and I
thought the idea was worth mentioning in case someone
Ralf Stephan wrote:
I'm leaning towards the operator kind of recurrence because I
definitely don't think about it as a sequence with specific length.
But the core object really is the ogf, i.e. the polynomial fraction
which defines everything in the same sense special function
expressions are
One more remark: there is also a basic implementation of linear
recurrences with constant coefficients in sage.crypto.lfsr...
--
Marc
--
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
William Stein wrote:
IIRC Maple used to have something like * to denote matrix
multiplication, don't know if this is still the case,
Hey, you're right-ish:
http://kb.iu.edu/data/afbm.html
They don't use * either, they use . (like in Mathematica). They
deprecated *.
Actually Maple
Thierry wrote:
- rename RR as RFF (for real floating field), so that this
representation is not preferred than the others (especially RDF which
is faster and allows using more libraries, with the same 53 bits of
precision). The current name RR suggests it is the right default
choice.
Yes,
Marco Streng wrote:
So the choices are:
1) explicit conversion RR -- RIF: allow / disallow
2) explicit conversion RIF -- RR: allow / disallow
3) automatic coercisions: disallow / (RR--RIF) / (RIF--RR)
[...]
My vote is:
1) allow
2) allow
3) from RIF to RR
Mine is:
1) allow
2) allow for
Thierry wrote:
- How do you plan to convert
- from RealIntervalField(2) to RealField(100) ?
Promote both endpoints.
- from RealIntervalField(100) to RealField(2) ?
Round each endpoint in the appropriate direction.
- from RealField(100) to RealIntervalField(2) ?
Round the input in both
Nathann Cohen wrote:
The following code does not return what it should::
sage: Z3 = IntegerModRing(3)
sage: C = cartesian_product([Z3,Z3])
sage: C([2,2])^2 # bug
(1, 1)
You can already write something like # bug - not tested...
And of course we could get the list of them with a sage -t
Paul Mercat wrote:
OK, thank you, I see.
It's an efficient method to compute a approximation of the spectral
radius. It's good but I still want to have the exact value.
You can use the same idea to compute the minimal polynomial of your
matrix (with high probability). This is the starting
Nathann Cohen wrote:
I have a function named a which takes an integer as input.
Unfortunately when 'n' is a prime power, a(n) returns a very large
matrix (but quick to compute). Thus, I would love to cache only the
answers of a(n) when n is NOT a prime power, which are smaller and
take more
David Roe a écrit :
More documentation is always good, but I would argue that the right
solution is to change the behavior of power series rings to line up with
p-adics.
Would there be any difference left between A[[x]] and A[x]/(x^n), then?
--
Marc
--
You received this message because you
Eric Gourgoulhon wrote:
- Technically, it would be desirable to create a subclass,
ConstScalarField say, of the Element class of C^oo(U) (ScalarField) to
implement constant fields, in order to take advantage of their
specific properities
[...]
- Mathematically, the set of constant scalar
Nils Bruin wrote:
The consistent solution, and one that is mathematically defendable,
would be to have a != GF(p)(a) for integers a (i.e., always force
explicit coercion for equality to hold). So that is making == strict
enough to allow hash to meet its requirements, but this turns out to
be
Robert Bradshaw wrote:
So you would prefer
sage: 4/2 == 2
False
sage: 4/2 + 0/1 == 2 + 0/1
True
Definitely.
sage: R.x == ZZ[]
sage: (x-1) * (x+1) - x^2 + 1 == 0
False
I certainly agree that being able to use == 0 here is convenient.
But having to write, say, eq(pol, 0) instead does
Volker Braun wrote:
Comparisons in Java are probably one of the #1 traps for the unwary
(and inconsistent between primitives and objects). But at least for
objects, Java == is just the Python is. And .equals() is Python
==. So there you have your two comparisons already. Really, you are
Nils Bruin wrote:
It isn't for explicit equality checks, but the wide use of
@cachedmethod means that many objects that are passed as arguments (so
that's almost all sage objects at some point) can end up as (part of)
dictionary keys, without the user explicitly asking for it. This
requires
Robert Bradshaw wrote:
sage: x = SR.var('x')
sage: bool(arctan(1+abs(x)) == pi/2 - arctan(1/(1+abs(x
False
Better returning True when the CAS isn't strong enough to prove
equality (which may well be most of the time).
Sure. But why not have
sage: bool(sin(x)^2+cos(x)^2==1)
True
William A Stein wrote:
What's the situation with speed regression testing in Sage? A couple
of years ago I think people wrote a regression testing framework
(maybe David Roe or Robert Bradshaw?)
FWIW I started a little bit of work aiming to make the existing
benchmarking code more useful a
Bart S wrote:
Most SPKGs seem to install binaries that are then called from existing
Sage code. Are there also examples of SPKGs that installs Python code
that integrates with Sage (like adding a new module)?
The ore_algebra spkg adds a Python module ore_algebra (NOT
sage.ore_algebra, though,
Volker Braun wrote:
I would put it in src/doc/en/tutorial as REsT. For example, there is
already src/doc/en/tutorial/sagetex.rst
Wouldn't thematic_tutorials/ be a better location? I thought tutorial/
was for the main tutorial that everyone trying to use sage should skim
through...
--
Marc
Jonas Jermann wrote:
What would you suggest I do to get a fast exact sign/comparison?
Just a wild guess, but you may want to see if the patch at
http://trac.sagemath.org/ticket/15600
helps.
--
Marc
--
You received this message because you are subscribed to the Google Groups
sage-devel
Thierry wrote:
parent(A) is parent(B)
but
type(A) is not type(B)
Here is an example:
sage: A = cos(x)
sage: B = units.charge.coulomb
sage: parent(A) is parent(B)
True
sage: type(A) is not type(B)
True
More examples:
sage: parent(-infinity) is parent(infinity)
True
sage:
Clemens Heuberger wrote:
Are there other options? What are your recommendations?
Assuming the two modules are part of the same package, I would add a
separate REFERENCES section somewhere in the package and make both
docstrings point to that section.
--
Marc
--
You received this message
Hi,
The following example from q_analogues.py happens to work for a number
of questionable reasons:
sage: q_binomial(6,1,I)
1 + I
I'm working on a patch that breaks (or fixes, depending how you look at
it) one of the behaviors it relies on, and I'd like advice on how to
handle the
Jeroen Demeyer wrote:
Element.__call__ calls it, it is a Cython call.
There is no Element.__call__.
I meant Parent.__call__, sorry.
--
Marc
--
You received this message because you are subscribed to the Google Groups
sage-devel group.
To unsubscribe from this group and stop receiving
Jeroen Demeyer wrote:
However, I wonder why you insist on using
parent._element_constructor_(). You could for example have a fast
ElementClass.__init__() or a fast non-method function
construct_foo_element().
Yes, that's my question, more or less: for example, QQ is an instance of
a Python
Hi,
What is the recommended way to implement a parent that needs a fast
element constructor but otherwise can be expected not to be queried too
often once the coercion maps involving it are set up ? (I would like
MyParent(obj) to have as little overhead as possible, not just
coercions.)
I
Jeroen Demeyer wrote:
On 2015-02-11 18:18, Marc Mezzarobba wrote:
Jeroen Demeyer wrote:
Element.__call__ calls it, it is a Cython call.
There is no Element.__call__.
I meant Parent.__call__, sorry.
If Parent is a Python object, then Parent.__call__ cannot possibly be
a Cython call.
I'm
Jeroen Demeyer wrote:
Sage shouldn't support Debian. Debian should support Sage.
On a perhaps related note, Sage used to be about building the car,
didn't it¹? I find it ironic how hard sage makes it for other projects
to rely on it in the way it itself relies on tons of third-party
packages.
Hi,
Here's what I get when trying to comment on #17194:
Oops…
Trac detected an internal error:
OSError: [Errno 2] No such file or directory: '/tmp/tmpfeh2TI'
There was an internal error in Trac. It is recommended that you notify
your local Trac administrator with the information needed to
Marc Mezzarobba wrote:
What is the recommended way to implement a parent that needs a fast
element constructor but otherwise can be expected not to be queried
too often once the coercion maps involving it are set up ?
(Oops, wrong list. Sorry, I'll repost to sage-devel.)
--
Marc
--
You
Hi,
What is the recommended way to implement a parent that needs a fast
element constructor but otherwise can be expected not to be queried too
often once the coercion maps involving it are set up ? (I would like
MyParent(obj) to have as little overhead as possible, not just
coercions.)
I
Volker Braun wrote:
My advice would be to implement the parent in Python and benchnmark
it. If you are doing something in _element_constructor_ that would
benefit greatly by Cython then you can just move that part to Cython.
Apparently my question was unclear. Of course, it is good advice as a
Volker Braun wrote:
fixed, at least for now.
Thanks!
--
Marc
--
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
Francois Bissey wrote:
Those are files generated by cython - they should be in .gitignore.
They were removed from .gitignore in #17918 because current version of
sage no longer put them in src/sage. You can delete them once and for
all with git clean, and they should not come back.
--
Marc
Bruno Grenet wrote:
My questions: Is my understanding correct? If not, what are supposed
these arguments to be for? And if I understand correctly, is the
behavior I mention a bug?
I'd say you are right, and the reason for the bug is that ETuple changed
after Polydict was written. Compare
Marc Mezzarobba wrote:
There are *tons* of modules missing from the reference manual, some
obsolete, some still in pre-sphinx style or with rst syntax errors,
some whose user documentation in fact appears in another module, and
many apparently just forgotten.
A few weeks ago I started
Eric Gourgoulhon wrote:
It seems that callable symbolic expressions, as implemented in
src/sage/symbolic/callable.py,
are not included in the reference manual: there is no mention of
sage/symbolic/callable in
src/doc/en/reference/calculus/index.rst
and they do not appear when asked for in
Simon King wrote:
I guess a single ticket whose purpose is to add and fix all
documentation to the manual would be a nightmare to maintain. Wouldn't
it be easier to have one ticket for each module that is missing in the
documentation?
Yes, it would! And I'm not planning to submit it all in a
Simon King wrote:
According to the documentation, one is allowed to treat __richcmp__
separate from __cmp__. Hence, it is legal to have separate behaviour
for ,= etc and for cmp(,).
Is that possibility used in Sage somewhere?
Yes, see src/sage/rings/real_mpfi.pyx.
--
Marc
--
You
Vincent Delecroix wrote:
I already added sage/misc/sage_input.py in #17748 and Nathan added
combinat/permutations_cython.pyx in #17848. So it is highly probable
that your branch conflicts with the current and/or next beta
Yes, I noticed. No problem, your sphinx-ifications are probably much
Eric Gourgoulhon wrote:
Then clearly the ticket #17876 is irrelevant.
Not necessarily: I have no idea when (or if) I will be able to finish
going through all missing modules, or even when I will have time to
bring the existing part to a state where it can be reviewed without
waiting for the
William Stein wrote:
sage: a = RIF(1/5)
sage: a == a
False
sage: a is a
True
That's how interval arithmetic usually works! Quoting from the
documentation of real_mpfi:
| Comparison operations (``==``, ``!=``, , ``=``, , ``=``)
| return ``True`` if every value in the first interval
martin.vgag...@gmx.net wrote:
Is there anything like this around already?
sage.structure.sequence provides something similar for lists (and is
indeed very useful), but I don't think it has a counterpart for
dictionaries.
--
Marc
--
You received this message because you are subscribed to
Marc Mezzarobba wrote:
There are *tons* of modules missing from the reference manual, some
obsolete, some still in pre-sphinx style or with rst syntax errors,
some whose user documentation in fact appears in another module, and
many apparently just forgotten.
A few weeks ago I started
Volker Braun wrote:
Which of the big M's has multiple
and subtly-different ways to determine the size of a container?
Maple. ;-)
--
Marc
--
You received this message because you are subscribed to the Google Groups
sage-devel group.
To unsubscribe from this group and stop receiving emails
The sage trac server has tons of years-old open tickets about
(i) the notebook;
(ii) interacts;
(iii) Solaris and AIX ports.
I suspect a number of them should be closed as duplicate/invalid/
wontfix; it would be nice if people with better knowledge of these areas
could have a look.
--
kcrisman wrote:
Occasionally people do; I occasionally cull (i) or transfer
them/report
upstream to the github sagenb site, for instance. It's just that
people have other things to work on; in that sense, triage is
happening continuously.
Sure. I mentioned these specific areas because the
Jan Groenewald wrote:
I a computer lab environment, with identical desktop images (PPA,
Ubuntu 14.04, 64bit) all except one user can launch the notebook fine.
For some reason, that user is importing the system-wide twisted and
not the sage twisted.
A wild guess: does the user have .pth
Jeroen Demeyer wrote:
partitions_c could probably be replaced by the implementation in arb
Why arb (which deals with floating point)?
Because arb has the best (fastest and most rigorous among the fast
ones) implementation as far as I know. As for why Fredrik put it in arb,
I guess that's
Currently, evaluating a polynomial ring element on a symbolic expression
returns a result in Horner form:
sage: pol = QQ['x'](range(10))
sage: pol(x)
9*x + 8)*x + 7)*x + 6)*x + 5)*x + 4)*x + 3)*x + 2)*x + 1)*x
This behavior is of course a side effect of the default generic
evaluation
Marc Mezzarobba wrote:
Currently, evaluating a polynomial ring element on a symbolic
expression returns a result in Horner form:
sage: pol = QQ['x'](range(10))
sage: pol(x)
9*x + 8)*x + 7)*x + 6)*x + 5)*x + 4)*x + 3)*x + 2)*x + 1)*x
http://trac.sagemath.org/ticket/18282
(needs
Jan Groenewald wrote:
So, that should be fixed. Would you mind explaining to me what that
was?
I don't know exactly, I only had a similar problem some time ago...
--
Marc
--
You received this message because you are subscribed to the Google Groups
sage-devel group.
To unsubscribe from this
Jeroen Demeyer wrote:
src/sage/combinat/partitions_c.cc
partitions_c could probably be replaced by the implementation in arb if
people want to drop it. But having two implementations can be a good
thing too...
--
Marc
--
You received this message because you are subscribed to the Google
Vincent Delecroix wrote:
The cache is in a custom field `__an_element` whose name will be
changed in #14982 for `_cache_an_element` because in one case it has
to be reset.
By the way, I would be really grateful if someone could review that
ticket, which aims at fixing a coercion issue that
Nathann Cohen wrote:
As for putting them in a catalog: I don't have a strong opinion. As
long as we I can put in my .sagerc:
sage: from categories import *
I am all good with it if someone volunteers.
This very syntax was something that the code guys wanted to implement
recently.
Hi,
Fredrik Johansson's Arb library hasn't been an optional package for a
full year yet, but Volker already suggested fast-tracking it to standard
a while ago[1], and the (few) replies to his message were positive.
Doing it now would make the development of the sage bindings a bit
easier.
Vincent Delecroix wrote:
As I already mentioned on tickets, the semantic of equality is a bit
different for intervals and balls. This is annoying since they
basically represent the same objects (=intervals with diadic bounds).
This is my only objection for having it standard right now.
If I
Jori Mäntysalo wrote:
>> And those edge cases should be documented.
>
> Maybe. But something like Graph().is_connected() is easy to check, if
> the user wants to know if empty graph is defined to be connected.
When there is no ambiguity in the method that will be called, yes. But
as soon as you
[X] 'foo?' should NOT display TESTS blocks.
[ ] 'foo?' should display TESTS block.
--
Marc
--
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
Jori Mäntysalo wrote:
> OK. I'll close this path, as it seems that my view belongs to
> minority.
I for one agree with you.
More precisely, I do find the sage source code easy to navigate, making
it easy to learn about Sage's capabilities *if* you know how to grep
through it and make sense of
William Stein wrote:
> If somebody explicitly puts their name in the AUTHORS block when they
> are writing the code in the first place, then we should respect that
> and continue to acknowledge them.
I agree with that part. It would be wrong to remove the AUTHORS blocks
without putting
Simon King wrote:
> it is also supposed to say *who* did *what* ("what" meaning the
> purpose/intention of the change)
Commit messages too, and I'd argue they are the right place to do
that...
(Incidentally, I'm not sure git blame would be the right tool if we did
want to auto-generate author
Hi,
Tangentially related: wouldn't it be better to also remove the "AUTHORS"
sections from docstrings?
--
Marc
--
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
John Cremona wrote:
> ...not to a user who types
>
> sage: X.fancy_function?
>
> though. Credit needs to be easily and obviously accessible or it will
> not get noticed.
My impression is that no (fine-grained) credit at all is better than
what we have now, and that credits generated from the
John Cremona wrote:
> Just because Sage is open source does not mean that contributors
> should not get credit for their work.
Of course. But from what I've seen, lots of AUTHORS sections are awfully
out of date, while the git history is a few keystrokes away...
--
Marc
--
You received this
William Stein wrote:
> I think we should revisit our decision -- from long ago -- to make
> domain:complex the default for Sage. Paul Zimmerman argued for it a
> long time ago. However, my impression is that symbolic integration is
> used mainly by people who are doing purely real-variable
William Stein wrote:
>> Copy from pdf is generally troublesome, anything thats not just
>> letter+number is likely to cough up unicode stuff.
>
> Yes. Is there any solution to this, at least is one is created your
> own pdf's using latex?
\usepackage{cmap} is a good starting point.
--
Marc
Nathann Cohen wrote:
> All I can come up with is something like a 'warning', a message that
> would show up once per session, when triggered by a computation. I'm
> all ears for any way to tell users things they didn't know they
> needed.
I'd simply use the Python logging module and introduce a
Michael Orlitzky wrote:
> It's a little dangerous, our doctest framework uses the XKCD random
> number generator. If you run ZZ.random_element() in a doctest it will
> always output the same number. You have to work around it by calling
> set_random_seed() before every test.
There is a
saad khalid wrote:
> I don't know much about this so I thought I would just ask, how would
> using this benefit Sage? Is it comparable to mpmath and MPFR? If so,
> how does it compare? Sorry for my ignorance. Also, what is the target?
Sollya is mainly aimed at developers of floating-point
Fredrik Johansson wrote:
> Arb (which is now in Sage) permits computing incomplete gamma
> functions with rigorous error bounds over arbitrary-precision
> real/complex (interval) fields.
Incidentally, the sage bindings (over complex balls) need review:
http://trac.sagemath.org/ticket/19082
--
Vincent Delecroix wrote:
> At least you can do
>
> sage: from sage.repl.rich_output import get_display_manager
> sage: dm = get_display_manager()
> sage: dm.text = 'unicode_art'
...or
sage: %display unicode_art
sage: matrix.block(3,3,[matrix.ones(2)]*9)
mmarco wrote:
> I have also
> missed something like .squarefree_part() or something like that.
I've had a branch lying around for some time with exactly that; I just
pushed it to trac:
http://trac.sagemath.org/ticket/20368
--
Marc Mezzarobba
--
You received this message becau
Johan S. R. Nielsen wrote:
> 1) This is a property that can throw an exception. Isn't that a
> problem?
>
> 2) This is a property that runs a heavy computation when called. Isn't
> that a problem?
My two cents: both are problems, and matrix.I is problematic for this
reason. However, things like
Johan S. R. Nielsen wrote:
> [X] Phase out properties that might (expectedly) throw exceptions, such
> as Matrix.I. Condone the use of properties as "getters" of derived
> information, such as Matrix.T (transpose).
--
Marc
--
You received this message because you are subscribed to the
Jeroen Demeyer wrote:
> If the error is 1 ulp or more for a basic function (like log) on a
> reasonable non-pathological input (like 3.0), I would consider that
> an upstream bug.
Quite a few implementations only provide accuracies of 3-4 ulp for speed
reasons (it may make it possible to use
1 - 100 of 213 matches
Mail list logo