On Mon, Apr 2, 2012 at 3:25 PM, David Joyner <wdjoy...@gmail.com> wrote:

> On Mon, Apr 2, 2012 at 4:23 AM, Gaurav Sathe <gaurav.sath...@gmail.com>
> wrote:
> > Hi, David,
> >
> > On Sun, Apr 1, 2012 at 4:14 PM, David Joyner <wdjoy...@gmail.com> wrote:
> >>
> >> On Sun, Apr 1, 2012 at 5:28 AM, Gaurav Sathe <gaurav.sath...@gmail.com>
> >> wrote:
> >> > Hi,
> >> >
> >> > PFA my proposal for GSOC 2012 for the topic Group Theory . I would
> >> > really
> >> > appreciate any suggestions and changes from the community which would
> >> > improve the proposal.
> >> >
> >> > Please let me know .
> >>
> >> What concrete classes of groups do you have experience with in your
> >> studies?
> >>
> >    I have mainly studied abelian groups and permutation groups,
> >    I do have a general idea about Matrix groups also.
> >    However I would like to implement mainly the abstract group as I have
> a
> > better command over it.
> >
> >    How I plan to implement it is as follows:
> >    There will be a main Group class.
> >    Each group object will have a number of methods like finding
> > identity,inverse, order of element, order of group, determining abelian
> > nature, etc
>
> It seems to me that to do this you must have a method to enumerate all
> elements of a group.
> How do you plan to implement that for the class of abstract groups?
>
> I think if group elements are enumerated in a list, then it will be
possible to implement the above mentioned methods.

For eg. for finding identity: we can take an element from the list and
operate it with the other element. If it returns the same element... it is
the identity element.

Likewise for other methods...

Can you think of any better technique?


>
> >
> >    I also think that implementing homomorphism class is a good idea. Yes
> the
> > homomophisms will be restricted to abelian groups since that will make
> the
> > implementation a bit simpler.
> >
> >    I plan to implement homomorphisms in a way similar to how its done in
> > SAGE, i.e. for multiplicative abelian groups . There will be a class for
> the
> > set of homorphisms between G and H , i.e Hom(G,H) and the associated
> methods
> > under this class for each homomorphism object.
>
>
> How do you plan to implement to compute the kernel of a homomorphism
> between two multiplicative abelian groups?
>

   A homomorphism is a mapping between elements of two groups. According to
me(please correct me if I'm wrong) a dictionary is the best way to
represent a mapping in Python. If that is the way we implement a
homomorphism (with the 'keys' representing the domain and 'values'
representing the range), then we can check all the 'key-value' pairs of the
dict. and all the 'keys' which have 'value' as the identity element will
form the 'kernel'.

>
> For you proposal, I think you need to be as explicit and concrete as
> possible.
>

Thanks for the advice. When you say explicit, do you mean I should include
in my proposal how I will implement every code?



>
> >
> > Do you think it will be possible to implement homomorphisms for
> non-abelian
> > groups as well? Also are there any other algorithms
> > you think I can implement? Please let me know.
> >
> > Right now I am trying to make a prototype of how the interface should
> look
> > like. I think that will give a better idea.
> >
> > Thnx
> >
> >
> >>
> >>
> >> >
> >> > Thank you.
> >> >
> >> > --
> >> > You received this message because you are subscribed to the Google
> >> > Groups
> >> > "sympy" group.
> >> > To view this discussion on the web visit
> >> > https://groups.google.com/d/msg/sympy/-/INJ9ucpALu4J.
> >> > To post to this group, send email to sympy@googlegroups.com.
> >> > To unsubscribe from this group, send email to
> >> > sympy+unsubscr...@googlegroups.com.
> >> > For more options, visit this group at
> >> > http://groups.google.com/group/sympy?hl=en.
> >>
> >> --
> >> You received this message because you are subscribed to the Google
> Groups
> >> "sympy" group.
> >> To post to this group, send email to sympy@googlegroups.com.
> >> To unsubscribe from this group, send email to
> >> sympy+unsubscr...@googlegroups.com.
> >> For more options, visit this group at
> >> http://groups.google.com/group/sympy?hl=en.
> >>
> >
> >
> >
> > --
> > Gaurav Sathe
> > -Student at BITS Pilani - Goa Campus
> >
> >
> >
> > --
> > You received this message because you are subscribed to the Google Groups
> > "sympy" group.
> > To post to this group, send email to sympy@googlegroups.com.
> > To unsubscribe from this group, send email to
> > sympy+unsubscr...@googlegroups.com.
> > For more options, visit this group at
> > http://groups.google.com/group/sympy?hl=en.
>
> --
> You received this message because you are subscribed to the Google Groups
> "sympy" group.
> To post to this group, send email to sympy@googlegroups.com.
> To unsubscribe from this group, send email to
> sympy+unsubscr...@googlegroups.com.
> For more options, visit this group at
> http://groups.google.com/group/sympy?hl=en.
>
>


-- 
Gaurav Sathe
-Student at BITS Pilani - Goa Campus

-- 
You received this message because you are subscribed to the Google Groups 
"sympy" group.
To post to this group, send email to sympy@googlegroups.com.
To unsubscribe from this group, send email to 
sympy+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/sympy?hl=en.

Reply via email to