> By the way, this category membership assertion in DirectProductCategory
>
> if R has CancellationAbelianMonoid then CancellationAbelianMonoid
>
> is clearly wrong with the implementation of multiplication in DirectProduct.
>
> In DirectProduct(2,INT), take
>
> a := [1,0]
> b := [0,1]
> c := [0,2]
>
> you have a * b = a * c = [0,0], but you clearly don't have b = c
)abbrev category CABMON CancellationAbelianMonoid
...
++ Description:
++ This is an \spadtype{AbelianMonoid} with the cancellation property,
++ i.e. \spad{ a+b = a+c => b=c }.
++ This is formalised by the partial subtraction operator,
++ which satisfies the axioms listed below:
++
++ Axioms:
++ \spad{c = a+b <=> c-b = a}
CancellationAbelianMonoid(): Category == AbelianMonoid with
--operations
subtractIfCan: (%,%) -> Union(%,"failed")
++ subtractIfCan(x, y) returns an element z such that \spad{z+y=x}
++ or "failed" if no such element exists.
--
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.