#11556: Linear transformations, built from free module morphisms
------------------------------+---------------------------------------------
Reporter: rbeezer | Owner: jason, was
Type: enhancement | Status: needs_review
Priority: major | Milestone: sage-4.7.2
Component: linear algebra | Keywords:
Work_issues: | Upstream: N/A
Reviewer: Martin Raum | Author: Rob Beezer
Merged: | Dependencies: #11552 #11553
------------------------------+---------------------------------------------
Changes (by rbeezer):
* status: needs_work => needs_review
* work_issues: Rebase on Sage 4.7.2.alpha2. =>
Old description:
> This patch builds vector space morphisms, aka linear transformations,
> from free module morphisms. This allows for a few specialized methods,
> such as an easier test for invertibility (check the rank of a matrix
> representation). But it is mostly about (a) a "linear transformation"
> constructor for beginners' use, (b) lots of documentation, (c)
> specialized output routines, so it is clear when a morphism runs between
> two vector spaces (not just two free modules).
>
> (c) required lots of doctest changes. When the example was complicated
> and involved two vector spaces, I usually changed the output to match the
> new format for the new morphisms. When the example was simple, I tried
> to "roll it back" to involve two free modules, to fully exercise that
> code.
>
> Additionally, there were a lot of doctests with matrices of the wrong
> size, reversing domain and codomain, that managed to pass due to the bug
> listed in #10793. Tighter controls here required fixing a lot of these.
>
> '''Depends:'''
> 1. #11552
> 1. #11553
>
> ----
>
> '''Apply:'''
> 1. [attachment:trac_11556-linear-transformations-v4.patch]
> 1. [attachment:trac-11556-linear-transformations-edits-v3.patch]
> to the Sage library.
New description:
This patch builds vector space morphisms, aka linear transformations, from
free module morphisms. This allows for a few specialized methods, such as
an easier test for invertibility (check the rank of a matrix
representation). But it is mostly about (a) a "linear transformation"
constructor for beginners' use, (b) lots of documentation, (c) specialized
output routines, so it is clear when a morphism runs between two vector
spaces (not just two free modules).
(c) required lots of doctest changes. When the example was complicated
and involved two vector spaces, I usually changed the output to match the
new format for the new morphisms. When the example was simple, I tried to
"roll it back" to involve two free modules, to fully exercise that code.
Additionally, there were a lot of doctests with matrices of the wrong
size, reversing domain and codomain, that managed to pass due to the bug
listed in #10793. Tighter controls here required fixing a lot of these.
'''Depends:'''
1. #11552
1. #11553
----
'''Apply:'''
1. [attachment:trac_11556-linear-transformations-v5.patch]
1. [attachment:trac-11556-linear-transformations-edits-v3.patch]
to the Sage library.
--
Comment:
A variety of doctests were fixed on #10793 and I fixed them too here,
since code here was more strict than before and picked up the same error.
So hunk failures were "correct" since they were not needed with #10793
merged. v5 version of main patch mostly just re-exports the v4 version
without the failures. I had to fix one hunk by hand where my changes were
a mix of #10793 changes and truly-new changes. Passes tests on affected
files and sage/modules.
I will mark this "needs review" though I am not sure that is strictly
needed. Feel free to approve my rebase as not needing review. (Rebase is
against 4.7.2.alpha2.) I'll rebase #11553 which is just a single fuzz
warning.
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/11556#comment:17>
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 post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/sage-trac?hl=en.