Opened 4 years ago

Last modified 4 years ago

#24900 needs_work defect

Tensor product and coefficients

Reported by: hivert Owned by:
Priority: major Milestone: sage-8.2
Component: linear algebra Keywords: tensor product, free modules
Cc: nthiery, tscrim Merged in:
Authors: Florent Hivert Reviewers:
Report Upstream: N/A Work issues:
Branch: u/hivert/tensor_product_and_coefficients (Commits, GitHub, GitLab) Commit: 009c70a07140b6df68ac61ccd38db52c0b1188b1
Dependencies: Stopgaps:

Status badges

Description

Tensor products of combinatorial free modules still use an old version of cartesian product. As a consequence extracting a coefficient is not possible:

sage: F = CombinatorialFreeModule(ZZ, [1,2]); F.__custom_name = "F"
sage: G = CombinatorialFreeModule(ZZ, [3,4]); G.__custom_name = "G"
sage: T = tensor([F, G]); T
sage: T.basis()[(1,3)].coefficient((1,3))
...
NotImplementedError:

I fix that. As a side effect, this change the result of an_element so that I have to fix a few doctests.

Moreover, building the tensor of two infinite dimensional FM now raises a correct warning:

sage: F = CombinatorialFreeModule(ZZ, NN)
sage: T = tensor([F, F]); T
Free module generated by Non negative integer semiring over Integer Ring ⊗ Free module generated by Non negative integer semiring over Integer Ring
sage: T.an_element()
/home/data/Sage-Install/sage-dev/local/lib/python2.7/site-packages/sage/categories/sets_cat.py:2159: UserWarning: Sage is not able to determine whether the factors of this Cartesian product are finite. The lexicographic ordering might not go through all elements.
  warn("Sage is not able to determine whether the factors of "
2*B[0] ⊗ B[1] + B[0] ⊗ B[0] + 3*B[0] ⊗ B[2] + B[42] ⊗ B[42]

I'm hiding this by asking only finite dim FM.

Change History (5)

comment:1 Changed 4 years ago by hivert

  • Branch set to u/hivert/tensor_product_and_coefficients

comment:2 Changed 4 years ago by hivert

  • Authors set to Florent Hivert
  • Commit set to 009c70a07140b6df68ac61ccd38db52c0b1188b1
  • Status changed from new to needs_review

New commits:

009c70aFix tensor prod. using old cartesian prod.

comment:3 Changed 4 years ago by chapoton

many failing doctests

comment:4 Changed 4 years ago by chapoton

  • Status changed from needs_review to needs_work

comment:5 Changed 4 years ago by tscrim

  • Cc tscrim added
Note: See TracTickets for help on using tickets.