#10963: More functorial constructions
-------------------------------------+-------------------------------------
       Reporter:  nthiery            |        Owner:  stumpc5
           Type:  enhancement        |       Status:  needs_review
       Priority:  major              |    Milestone:  sage-6.1
      Component:  categories         |   Resolution:
       Keywords:  days54             |    Merged in:
        Authors:  Nicolas M. Thiéry  |    Reviewers:  Simon King, Frédéric
Report Upstream:  N/A                |  Chapoton
         Branch:                     |  Work issues:
  public/ticket/10963                |       Commit:
   Dependencies:  #11224, #8327,     |  eb7b486c6fecac296052f980788e15e2ad1b59e4
  #10193, #12895, #14516, #14722,    |     Stopgaps:
  #13589, #14471, #15069, #15094,    |
  #11688, #13394, #15150, #15506     |
-------------------------------------+-------------------------------------

Comment (by SimonKing):

 Replying to [comment:413 vbraun]:
 > At that point I think its fine to require that Wedderburn has to restart
 Sage.

 Sure, that's what I meant.

 > I don't quite understand how Polybori solves this, `Z/2Z` has only
 idempotents but `Z/2Z[x]` does not.

 `x^2=x` is intrinsic in polybori. That's why I think polybori is the right
 tool for implementing the model: It provides an efficient Gröbner basis
 implementation for rings generated by idempotents.
 {{{
 sage: P.<magma, additive_magma, ring, distributive,
 finite,division,commutative> = BooleanPolynomialRing()
 sage: magma*magma
 magma
 sage: R = P*[ring*division*finite-ring*division*commutative*finite, ring-
 magma*additive_magma*distributive]
 sage: R.groebner_basis()
 [magma*additive_magma*distributive + ring, magma*ring + ring,
 additive_magma*ring + ring, ring*distributive + ring,
 ring*finite*division*commutative + ring*finite*division]
 sage:
 (magma*additive_magma*distributive*finite*division).reduce(R.groebner_basis())
 ring*finite*division
 sage: (ring*commutative*finite*division).reduce(R.groebner_basis())
 ring*finite*division
 }}}

 I think this is more or less what we want.

--
Ticket URL: <http://trac.sagemath.org/ticket/10963#comment:414>
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/groups/opt_out.

Reply via email to