#19257: pushout wrong when using coercion_reversed in construction functor
----------------------------+----------------------------------------------
       Reporter:  dkrenn    |        Owner:
           Type:  defect    |       Status:  positive_review
       Priority:  major     |    Milestone:  sage-duplicate/invalid/wontfix
      Component:            |   Resolution:
  categories                |    Merged in:
       Keywords:            |    Reviewers:
        Authors:            |  Work issues:
Report Upstream:  N/A       |       Commit:
         Branch:            |     Stopgaps:
   Dependencies:            |
----------------------------+----------------------------------------------

Old description:

> In `sage.categories.pushout.SubspaceFunctor` we have the example
> {{{
> sage: M = ZZ^3
> sage: S = M.submodule([(1,2,3),(4,5,6)]); S
> Free module of degree 3 and rank 2 over Integer Ring
> Echelon basis matrix:
> [1 2 3]
> [0 3 6]
> sage: S.construction()
> (SubspaceFunctor,
>  Ambient free module of rank 3 over the principal ideal domain Integer
> Ring)
> }}}
> The subspace functor uses `coercion_reversed=True`. The pushout
> {{{
> sage: sage.categories.pushout.pushout(S, M)
> Ambient free module of rank 3 over the principal ideal domain Integer
> Ring
> }}}
> is wrong; it should be `ZZ^3`.

New description:

 In `sage.categories.pushout.SubspaceFunctor` we have the example
 {{{
 sage: M = ZZ^3
 sage: S = M.submodule([(1,2,3),(4,5,6)]); S
 Free module of degree 3 and rank 2 over Integer Ring
 Echelon basis matrix:
 [1 2 3]
 [0 3 6]
 sage: S.construction()
 (SubspaceFunctor,
  Ambient free module of rank 3 over the principal ideal domain Integer
 Ring)
 }}}
 The subspace functor uses `coercion_reversed=True`. The pushout
 {{{
 sage: sage.categories.pushout.pushout(S, M)
 Ambient free module of rank 3 over the principal ideal domain Integer Ring
 }}}
 is wrong.

--

Comment (by dkrenn):

 Replying to [ticket:19257 dkrenn]:
 > In `sage.categories.pushout.SubspaceFunctor` we have the example
 > {{{
 > sage: M = ZZ^3
 > sage: S = M.submodule([(1,2,3),(4,5,6)]); S
 > Free module of degree 3 and rank 2 over Integer Ring
 > Echelon basis matrix:
 > [1 2 3]
 > [0 3 6]
 > sage: S.construction()
 > (SubspaceFunctor,
 >  Ambient free module of rank 3 over the principal ideal domain Integer
 Ring)
 > }}}
 > The subspace functor uses `coercion_reversed=True`. The pushout
 > {{{
 > sage: sage.categories.pushout.pushout(S, M)
 > Ambient free module of rank 3 over the principal ideal domain Integer
 Ring
 > }}}
 > is wrong; it should be `ZZ^3`.

--
Ticket URL: <http://trac.sagemath.org/ticket/19257#comment:4>
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/d/optout.

Reply via email to