Opened 10 years ago

Last modified 10 years ago

#11556 closed enhancement

Linear transformations, built from free module morphisms — at Version 4

Reported by: rbeezer Owned by: jason, was
Priority: major Milestone: sage-4.8
Component: linear algebra Keywords:
Cc: jason Merged in:
Authors: Rob Beezer Reviewers:
Report Upstream: N/A Work issues:
Branch: Commit:
Dependencies: #11552, #11553 Stopgaps:

Status badges

Description (last modified by rbeezer)

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 vecto5r space (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 teh 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
  2. #11553

Apply:

  1. trac_11556-linear-transformations-v4.patch

Change History (8)

Changed 10 years ago by rbeezer

Safe-keeping patch

comment:1 Changed 10 years ago by rbeezer

  • Authors set to Rob Beezer
  • Cc jason added

Patch is mostly up for safe-keeping.

(a) Passes most tests in sage/modules, failures are just output formatting.

(b) Functional, see module-level docs for vector_space_homspace.py.

(c) vector_space_morphisms.py remains to be overhauled - significant module-level documentation, a friendly constructor, and general touch-up.

(d) Need to add two new files to the overall reference documentation.

Changed 10 years ago by rbeezer

Working patch, needs doctests, here for safe-keeping

comment:2 Changed 10 years ago by rbeezer

  • Dependencies set to #11552, #11553
  • Description modified (diff)
  • Status changed from new to needs_review

Changed 10 years ago by rbeezer

comment:3 Changed 10 years ago by rbeezer

Ready for review.

Feeding the patchbot:

Depends #11552, #11553

Apply trac_11556-linear-transformations-v3.patch

Changed 10 years ago by rbeezer

comment:4 Changed 10 years ago by rbeezer

  • Description modified (diff)

v4 patch adds making full-spelling aliases for minpoly and charpoly of free module morphisms, in line with the nomenclature for matrices.

Note: See TracTickets for help on using tickets.