DiagramAlgebra is the abstract class, so BinaryRelationAlgebra would inherit from DiagramAlgebra.
The base_ring argument is necessary, because to make the diagrams into an algebra, you want to be able to add them - of course, this is just a formal sum. In general, the composition of two diagrams is obtained by stacking one diagram above the other, times q^(connected components in the "middle row"). More precisely, it may happen that after stacking some elements in the "middle row" are not connected to any elements in the top or bottom row. The additional parameter "q" then records how many connected components this "middle row" has. The basis elements are simply the diagrams - in your case, the binary relations. But again, if you want to consider binary relations between different sets, you would need a slightly more general gadget, usually called diagram category. Martin -- You received this message because you are subscribed to the Google Groups "sage-devel" 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 https://groups.google.com/group/sage-devel. For more options, visit https://groups.google.com/d/optout.
