#11772: improving error reporting of random_matrix, and bug fixing
-------------------------------------+----------------------------
Reporter: dimpase | Owner: jason, was
Type: enhancement | Status: needs_review
Priority: major | Milestone: sage-5.12
Component: linear algebra | Resolution:
Keywords: | Merged in:
Authors: Dmitrii Pasechnik | Reviewers: Rob Beezer
Report Upstream: N/A | Work issues:
Branch: | Commit:
Dependencies: | Stopgaps:
-------------------------------------+----------------------------
Changes (by {'newvalue': u'Dmitrii Pasechnik', 'oldvalue': ''}):
* status: needs_work => needs_review
* author: => Dmitrii Pasechnik
Old description:
> The error message of the call to random_matrix(QQ, 4, 8, rank=5) is quite
> cryptic.
> It should be easy to check that the rank is greater than min(nrows,ncols)
> and throw a ValueError with a meaningful message.
>
> A patch, which also fixes a similar small fly in random_subspaces_matrix,
> is attached.
> The cumulative patch incorporates more doctests, the fix for rank==1
> problem described in the comments, and puts a cup on the number of
> iterations in various while loops, so that they fail meaningfully.
>
> '''Apply''':
> 1. [attachment:trac_11772.3.patch]
New description:
The error message of the call to random_matrix(QQ, 4, 8, rank=5) is quite
cryptic.
It should be easy to check that the rank is greater than min(nrows,ncols)
and throw a ValueError with a meaningful message.
A patch, which also fixes a similar small fly in random_subspaces_matrix,
is attached.
The cumulative patch incorporates more doctests, the fix for rank==1
problem described in the comments, and puts a cup on the number of
iterations in various while loops, so that they fail meaningfully.
'''Apply''':
1. [attachment:trac_11772.3.patch]
1. [attachment:trac_11772-reviewer.patch]
--
Comment:
Reviewer patch:
1. Removed debugging print statements.
1. Code for sanity tests on inputs from the very first "v2" patch were
missing, so the corresponding doctests were failing. Code has been
restored, doctests function properly now.
1. Passed `max_tries` through the unimodular routine, since it has an
`upper_bound` keyword.
WeBWorK homework system can now query the Sage cell server. The
{{{random_matrix()}}} function is very appealing, but it absolutely must
return every time or some poor undergrad will just get a system hang
rather than a homework exercise. So I have added three prominent warnings
about requesting upper bounds.
I need to fix the randomness in these functions, see #10122. GSL is to
blame, and I have a working fix. Then the doctests will need a total
overhaul, so I'm tempted to do some other things here (document
`max_tries`) but want that to wait.
I'm fine with Dima's code contributions.
Dima - I apologize for sitting on this for such a very long time. If you
like my changes/contributions, would you flip this to positive review? If
so, then I will build more onto it on other tickets.
Rob
--
Ticket URL: <http://trac.sagemath.org/ticket/11772#comment:22>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica,
and MATLAB
--
You received this message because you are subscribed to the Google Groups
"sage-trac" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/sage-trac.
For more options, visit https://groups.google.com/groups/opt_out.