[Cuis-dev] Mathematics Repo :: Domains

Luciano Notarfrancesco luchiano at gmail.com
Fri Jul 2 04:47:55 PDT 2021


When I started to play with groups I implemented finite groups as objects
that explicitly contain all their elements. This is fun to do, and works
well for very small groups. The class Permutation is a good reference for
implementing elements of permutation groups.

For fields, I think implementing integers modulo a prime (i.e. Z/pZ, or
more generally rings Z/mZ with m not necessarily prime) is a good starting
point, they are easy to implement and there’s lots of interesting things to
do with them.

Also, as an introduction it might be enough to implement only elements (for
example permutations and modular integers), but for more advanced studies
it is important to implement the categories (Smalltalk objects for the
groups and the rings themselves, and group homomorphisms, ring
homomorphisms, etc).

Perhaps some of my code can serve as a guide. I think the most fun for a
student is not to *use* my code as they would use any other computer
algebra system, but to actually implement the stuff from scratch again in a
clean image and discover Smalltalk and mathematics along the way.

On Thu, 1 Jul 2021 at 4:57 PM Gerald Klix <cuis.01 at klix.ch> wrote:

> Thank you very much!
>
> I gathered that Mathematics is overkill if I only want
> to introduce someone to the basic concepts of abstract algebra,
> like groups and fields.
>
>
> Best Regards,
>
> Gerald
>
>
>
> On 6/30/21 8:59 AM, Luciano Notarfrancesco via Cuis-dev wrote:
> > The code at those repos might be useful as a reference for someone
> wanting
> > to implement some basic objects such as polynomial rings or vector spaces
> > for example. But there’s been lots of changes since then, some big
> > refactorings and important fixes. The ultimate goal is to implement
> > something like Magma, at least covering the parts of algebraic geometry,
> > commutative algebra, number fields and function fields, and in order to
> do
> > that it requires a higher level of abstraction and there’s still lots of
> > work to do. For speed, at some point it will be necessary to move some
> code
> > to a plugin, and it turns out that the bottle neck for most of the
> project
> > is just operating with matrices and tuples over integers modulo a small
> > integer (32 bits will probably be enough), so making a plugin will be
> very
> > straight forward and I’m designing everything in such a way that adding
> the
> > plugin will be easy with almost no changes required in the image.
> >
> > On Mon, 28 Jun 2021 at 8:20 PM Gerald Klix via Cuis-dev <
> > cuis-dev at lists.cuis.st> wrote:
> >
> >> Thank you! I am aware of that port, I am also aware of this repo:
> >> https://github.com/hbcbh1999/Mathematics
> >>
> >> I would like to know, whether the Cuis
> >> version is still working or if the aforementioned
> >> Cuis repo is up to date.
> >>
> >>
> >> Thanks in advance,
> >>
> >> Gerald
> >>
> >>
> >> On 6/28/21 2:43 PM, Ralf Barkow via Cuis-dev wrote:
> >>> Gerald Klix via Cuis-dev:
> >>>>
> >>>> What became of 'https://github.com/len/Mathematics' ?
> >>>>
> >>>
> >>> https://github.com/PolyMathOrg/Domains
> >>>
> >>>       "Domains is a Pharo port of https://github.com/len/Mathematics
> >>> <https://github.com/len/Mathematics> a computer system algebra running
> >>> on Cuis."
> >>>
> >>> --  /rgb
> >>>
> >>>
> >> --
> >> Cuis-dev mailing list
> >> Cuis-dev at lists.cuis.st
> >> https://lists.cuis.st/mailman/listinfo/cuis-dev
> >>
> >
> >
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.cuis.st/mailman/archives/cuis-dev/attachments/20210702/6edc313a/attachment.htm>


More information about the Cuis-dev mailing list