Hello everyone,

The past week has been decent. I have managed to send in a pull request which has the implementation of Seifert Matrix and related methods. That was a roller coaster ride week. I was a bit relaxed as I was done with the implementation by Thrusday, I was verifying its correctness against the Seifert program on Friday and there came the inconsistencies. The array used for creating the homology_generators was completely wrong, then correcting it gave further problems with the method braidwordcomponents(), then I discussed the implementation with Miguel and he said it would be better to re-think the logic. So that explains why I was consistently changing the gist that I posted on the previous post. I took time and wrote the logic for braidwordcomponents, and started to implement other parts as well. Genus method implementation took a bit of time, as there were some issues with the smallest_equivalent method and the logic that went into genus method implementation. Once that was done, the others were mostly dependent on the Seifert matrix. So to brief the structure …

It starts with any input being converted to braid —->>> generate the _braidwordcomponents —- >>> generate the _braidwordcomponentvector

The above methods form the machinery for the remaining methods. Then we generate the homology generators leading to Seifert Matrix.

Seifert Matrix is mainly used in the computation of the Alexander polynomial. Mostly the remaining methods implemented keep playing either with the machinery or Seifert Matrix. The results have been checked with the Seifert program hosted online (http://www.maths.ed.ac.uk/~s0681349/SeifertMatrix/#alphabetical).

So that concludes the implementation of Seifert Matrix related methods, I have tried to document it to a good extent, and that said there is a lot that needs to go into documentation.

The pull request :

https://github.com/miguelmarco/sage/pull/3

I guess we are on schedule or perhaps say a bit ahead.

So the next targets :

1. Checking on the speeds of Alexander polynomial of present implementation with the already implemented method.

2. Lazy imports is one which I need to work on for the stuff that is being imported

3. Conversion between DT Code and Gauss Code

4. A basic idea of Vogel’s algorithm and its implementation

1 & 2 are the medium ones, while 3 &4 are the top priority and they form the target for the week.

Hope you are finding this understandable as I tend to get too messy at writing. Well this has been a great experience for me till now. To end, many thanks for reading through.