> Your orignal problem is due to coerce. I think that > FullyRetractableTo is problematic because there are many different > reasonable definitions.
I agree, but also consider that the original authors explicitly mention this in DirectProductCategory. ++ Description: ++ This category represents a finite cartesian product of a given ++ type. Many categorical properties are preserved under this ++ construction. > OTOH if we put ring structure on DirectProduct then only the current > one remains to be reasonable. I am happy with any definition/implementation as long as it fulfills the specification. So currently, with the intention of a categorial lift there is only one choice. But I agree, it is not really properly specified to the point. >> Bill and me discussed the coercion. If you check hyperdoc for >> DirectProduct and click on "origin" for the function "coerce", >> then you see that coerce: R -> % comes from Algebra(R). It just >> needs that R is a CommutativeRing. Thus, removing >> FullyRetractableTo R will probably have no effect on my original >> problem. > Right, coerce also comes from Algebra(R). I would say that retract > and coerce make sense if we treat DirectProduct as a ring. But when > we multiply DirectProduct by an matrix the ring structure of > DirectProduct is irrelevant. I agree to your last sentence, but I don't see how one can use that information. Originally I wanted for an integral domain R, F:=Fraction(R), S:=SquareMatrix(2,F) to find appropriate matches for inserting coercions so that *: (R, S) -> X can result. With your observation the coercion coerce: R -> D for D := DirectProduct(2, R) would be forbidden, because the respective multiplication *: (D, S) -> D would be a "matrix multiplication that relies on the free module structure of D rather than D being a ring. Yes, it would be nice if that could be used, but I don't see how. Anyway, I like your observation. Ralf -- You received this message because you are subscribed to the Google Groups "FriCAS - computer algebra system" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/fricas-devel?hl=en.
