Macaulay2 / Macaulay2/M2

Components & formation of direct sums of matrices

Open
#2,891 4 comments 0 reactions 1 assignee Claimed by @mahrud View on GitHub
Core
Dominant language
Macaulay2
Stars
435
Forks
297
Avg merge
4d 20h
Merged PRs (30d)
11

Description

(I vaguely recall a related issue, but I couldn't find it. Let me know if this is duplicate)

It seems like there are a lot of procedures that cause M2 to forget component and formation information. Ideally this work shouldn't have to be duplicated in every single method. Is there a good way to do this once? For instance, when creating the directSum method give it an option that indicates that the method should store formation in each call.

More specifically for this issue, I think the following should work:
```m2
i1 : m = matrix{{1}};

1 1
o1 : Matrix ZZ <--- ZZ

i2 : components(m ++ m)

o2 = {| 1 |, | 1 |}

o2 : List

i3 : components coker(m ++ m) -- HERE

o3 = {cokernel | 1 0 |}
| 0 1 |

o3 : List

i4 : components(coker m ++ coker m)

o4 = {cokernel | 1 |, cokernel | 1 |}
```
Perhaps additive methods should automatically be applied component-wise? Not sure if this is a good idea in general though.

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.