#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,     |  8045aa4a4b7ada735b3eb6055382f9b341a39f1e
  #10193, #12895, #14516, #14722,    |     Stopgaps:
  #13589, #14471, #15069, #15094,    |
  #11688, #13394, #15150, #15506     |
-------------------------------------+-------------------------------------

Comment (by nbruin):

 Replying to [comment:396 vbraun]:
 > Or, even better, with stand-alone axiom objects either using a
 `@require_axiom(Finite)` decorator or class syntax if you prefer:
 > {{{
 > sage: class Cs(Category):
 > ....:     class Finite_or_any_other_name(axioms.Finite):
 > ....:         class ParentMethods:
 > ....:             def foo(self):
 > ....:                 print "I am a method on finite C's"
 > }}}
 There's a peculiarity in this representation of the concept: with this
 paradigm
 it would be possible to implement multiple `axiom.Finite` subclasses on
 `Cs`. I'm not sure that's a desirable property. Although it could express
 Wedderburn: The `Finite` and  `Commutative` attributes on `DivisionRings`
 could
 both inherit from both `axiom.Finite` and `axiom.Commutative`. I'm not so
 sure
 doing this is desirable. I would expect it's better to mandate that every
 category can implement an axiom at most once. And using fixed attribute
 names
 does that naturally, at the expense of forcing name choice.

 I wonder if "name clashes" in axioms are ever a real problem. I would hope
 that
 if two categories `A` and `B` have conflicting ideas over what the axiom
 named `d` must mean, then any common supercategory doesn't implement
 either
 (because it can't carry them). I don't think the different meanings will
 ever
 clash then.

 If there is a common supercategory that implements one of the meanings of
 the
 axiom then the terminology is genuinely confusing and then the system
 rightly
 points at a naming clash that needs resolving.

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