Hello all,

My name is Sherjil Ozair and I'm a first year student of Indian
Institute of Technology, Delhi pursuing a dual degree(B.Tech +M.Tech)
in Computer Science and Engineering. I got to know about GSoC just a
couple of weeks back. I have an immense passion for coding and
algorithms, and have coded for international clients before, once for
a medical professor implementing a statistical mathematical function
in C# (The Mann-Whitney U test), and once an email parsing script in
python.

I have taken an Algorithms course which worked almost completely with
python. As part of the project for that course, I had successfully
implemented RSA encryption in python, which took roughly 4-5 seconds
for a 64-bit Int. From then on, I've been playing around with python,
and loving every bit of it. I've also taken a Data Structures and
Algorithms course. Other than this, Two relevant math courses that
I've taken is 'Analysis and Metric Spaces' and 'Contemporary Abstract
Algebra'.

I have a sound background in CS and math, but what I lack in
experience, I will to make up by working hard.
Currently I'm getting used to the code base of sympy, getting to know
how its core works.

I'm also putting together a project idea for GSoC based on improving
Set-theoretic aspects of sympy.
The objective of the project is to implement Set notations for sympy,
covering the most used Set-builder notations, the most basic being set
of solutions of functions. The implementation would cover how to deal
with infinte sets, whether using explicit or lazy computation.

I plan to introduce Abstract Algebra-ic functions for Sets like
isGroup(), isRing(), external direct product, internal direct product,
and properties like Characteristic of a Ring, kernel, etc..
One relevant implementation in Group Theory would be Isomorphism, i.e.
to check whether two groups or isomorphic, and also Homomorphism.
Fields and Vectors, with functions like span(Basis) which returns a
VectorSpace also needed. Proper links with Linear Algebra will have to
be established while developing VectorSpaces.

As yet, Sympy has more of Calculus and associated functionalities.
Implementing Abstract Algebra and Sets would be a good stepping stone
for later addition of Formal Logic Theory notations.

A distant future dream is that with abstract algebra-ic concepts
introduced, one can look into Proof Theory, and making the computer
more 'intelligent'.

This is just an abstract of the project. I will come up with a more
concrete proposal in a few days, after I've explored and played with
Sympy a little more.

I have been facing difficulties with getting a patch pushed in, as I
can't find an unsolved issue yet that interests me. Any that interests
me is already done, and all that needs to be doen is some
documentation work, or putting in some examples. I request the
Potential Mentors to allow me to code in a fresh implementation, a
separate class, which could be added in to sympy, and one that would
count as a proof to show that I know python. :)

Alexey mentioned that the class Sequence is not as yet in sympy. I'm
currently working on it. and will be done with a base implementation
in a few hours.

Thank you for your time,
Sherjil Ozair

-- 
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