you are absolutely right, this argument was to quick and unprecise, I
have to confess - after all, it was R. Wisbauer and myself who designed
and implemented
non-associative structures ages ago in 1991 and added recip to
MagmaWithUnit (which was called MonadWithUnit at that time)

So my remark shoud better read:

All general functions as leftRecip and rightRecip and associator are 
superfluous as
soon as we have an associative structure, also it should not disappear

I hope, however, you agree with the intensions of my comment.

Am 02.02.18 um 19:54 schrieb Bill Page:
> On Fri, Feb 2, 2018 at 3:53 AM, Prof. Dr. Johannes Grabmeier privat
> <> wrote:
>> All general functions as leftRecip and rightRecip are superfluous as
>> soon we have a recip, ...
> I don't think so. For example 'MagmaWithUnit' is inherited by a very
> large number of domains. It exports 'leftRecip' and 'rightRecip' as
> well as 'recip'. The intended semantics is that, for all x, if
> 'recip(x)' is not "failed" then 'leftRecip(x) = rightRecip(x) =
> recip(x)'. However if 'recip(x)' is "failed" then separate left and/or
> right inverses of x might independently still exist. To make
> 'leftRecip' and 'rightRecip' superfluous requires an additional
> assumption but this could be the default assumption implemented in
> 'MagmaWithUnit'.
> diff --git a/src/algebra/naalgc.spad b/src/algebra/naalgc.spad
> index a9209da..9ae411f 100644
> --- a/src/algebra/naalgc.spad
> +++ b/src/algebra/naalgc.spad
> @@ -112,6 +112,8 @@ MagmaWithUnit() : Category == Magma with
>        recip x ==
>            (x = 1) => x
>            "failed"
> +      leftRecip(x) == recip(x)
> +      rightRecip(x) == recip(x)

Mit freundlichen Grüßen

Johannes Grabmeier

Prof. Dr. Johannes Grabmeier
Köckstraße 1, D-94469 Deggendorf
Tel. +49-(0)-991-2979584, Tel. +49-(0)-151-681-70756
Tel. +49-(0)-991-3615-141 (d),  Fax: +49-(0)-32224-192688

You received this message because you are subscribed to the Google Groups 
"FriCAS - computer algebra system" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
To post to this group, send email to
Visit this group at
For more options, visit

Reply via email to