There could of course be some point to cooking up a new implementation from 
scratch, but if I were to do it, I'd probably just wrap this library 
<https://github.com/jeanluct/braidlab/tree/master/extern/trains> (note that 
main() in train.cpp needs a few changes to be run ad hoc, but I've had some 
good use out of it already).

Den søndag den 9. august 2015 kl. 13.02.32 UTC+2 skrev mmarco:
>
> I also spent some time trying to figure out how to implement Bestvina 
> -Handel algorithm. But i am not really an expert on that, so i desisted 
> after some time. If you want to work on that, i would definitely try to 
> help.
>
> I am so happy to have a braid/knot theory specialist on board.
>
> El domingo, 9 de agosto de 2015, 12:55:21 (UTC+2), fuglede....@gmail.com 
> escribió:
>>
>> Having a libhomfly wrapper would certainly be nice. More generally, the 
>> Mathematica KnotTheory` 
>> <http://katlas.org/wiki/The_Mathematica_Package_KnotTheory%60> package 
>> allows, iirc, for the input of a general R-matrix and spits out braid group 
>> representations. Or maybe it's just for the ones that come from quantum 
>> groups of simple Lie algebras. It would be great to have that ported to 
>> sage as well.
>>
>> Nonetheless, I think there could still be some value in having a Kauffman 
>> bracket implementation of the Jones polynomial such as yours: while the 
>> braid group representation algorithm is certainly more effective in 
>> particular cases, it is not clear to me that it *always* is. In 
>> particular, what I wrote tends to be rather slow for closures of long words 
>> in 10 or more strands. I actually noticed the incorrect outputs in #17030 
>> when I was about to benchmark the algorithm.
>>
>> Also on my wish list is a wrapper for Toby Hall's implementation of 
>> Bestvina–Handel for braids, but that's a different issue entirely.
>>
>> Den søndag den 9. august 2015 kl. 12.34.45 UTC+2 skrev mmarco:
>>>
>>> I wouldsay that the problems in your  examples has to do with the 
>>> existence of completely isolated trivial components. Since we make the 
>>> computation with the lists of crossings, all components with no crossings 
>>> involved are ignored. Besides, the first example has no crossings at all 
>>> (which makes the method to fail).
>>>
>>> So maybe we should try to take care of these cases in our data 
>>> structures. 
>>>
>>> If you are interested in knot theory in Sage, please help us review the 
>>> ticket. There are some people already looking at the code, but they would 
>>> like someone that knows the theory behind it to review the mathematical 
>>> correctness.
>>>
>>> Btw, in the long run, i would like to include a library[1] to compute 
>>> the homfly polynomial. It is much faster than our actual methods for 
>>> Alexander and Jones polynomials. But in the meantime, i think we should 
>>> focus on having the basics merged.
>>>
>>> [1]http://trac.sagemath.org/ticket/18047
>>>
>>> El jueves, 6 de agosto de 2015, 17:01:55 (UTC+2), fuglede....@gmail.com 
>>> escribió:
>>>>
>>>> In fact, when matching the return values of Link.jones_polynomial() 
>>>> with the one I posted, I ran into some problems for sufficiently trivial 
>>>> links:
>>>>
>>>> sage: B = BraidGroup(2)
>>>> sage: b = B([])
>>>> sage: L = Link(b)
>>>> sage: L.jones_polynomial()
>>>> ...
>>>> IndexError: list index out of range
>>>>
>>>> Likewise, it does not appear to give the expected results when it does 
>>>> give results:
>>>>
>>>> sage: B = BraidGroup(8)
>>>> sage: b = B([1])
>>>> sage: L = Link(b)
>>>> sage: L.jones_polynomial()
>>>> 1
>>>> sage: b.jones_polynomial()
>>>> A^12 + 6*A^8 + 15*A^4 + 15/A^4 + 6/A^8 + 1/A^12 + 20
>>>>
>>>>
>>>>
>>>> This was obtained using the version of link.py in 04facf8.
>>>>
>>>> - Søren
>>>>
>>>>
>>>> Den torsdag den 6. august 2015 kl. 15.58.42 UTC+2 skrev Amit Jamadagni:
>>>>>
>>>>> Hello Soren,
>>>>>         Yeah, we have used the Kauffman's bracket decomposition for 
>>>>> the construction of Jones polynomial. I am not sure (may also be not the 
>>>>> right person to comment) on whether we could include this in the current 
>>>>> ticket. I guess may be we could have it in the groups/braid.py as we have 
>>>>> an implementation of Alexander polynomial which is also implemented in 
>>>>> the 
>>>>> ticket #17030.
>>>>>
>>>>> Thanks,
>>>>> Amit.
>>>>>
>>>>> On Thu, Aug 6, 2015 at 9:20 PM, <fuglede....@gmail.com> wrote:
>>>>>
>>>>>> Hi Amit
>>>>>>
>>>>>> Thanks for the reference; good to know that stuff is happening in 
>>>>>> that regard.
>>>>>>
>>>>>> And yes, everything here is related to the braid group. Even though 
>>>>>> this would create some overlap, perhaps it could be of use to have both 
>>>>>> algorithms: using braid group representations, for a fixed number of 
>>>>>> strands, the evaluation of the Jones polynomial of the trace closures 
>>>>>> becomes polynomial in the number of crossings (as only matrix 
>>>>>> multiplication is involved). From a quick look at ticket #17030, that's 
>>>>>> not 
>>>>>> the case for the existing implementation which appears to implement 
>>>>>> Kauffman's O(2^{O(#crossings)}) algorithm (please correct me if I'm 
>>>>>> wrong).
>>>>>>
>>>>>> - Søren
>>>>>>
>>>>>> Den torsdag den 6. august 2015 kl. 14.28.39 UTC+2 skrev Amit 
>>>>>> Jamadagni:
>>>>>>>
>>>>>>> Hello Soren,
>>>>>>>         Thanks for sharing the work. But we do have been working on 
>>>>>>> Knot Theory and here is the ticket
>>>>>>> Ticket : http://trac.sagemath.org/ticket/17030 
>>>>>>> <http://www.google.com/url?q=http%3A%2F%2Ftrac.sagemath.org%2Fticket%2F17030&sa=D&sntz=1&usg=AFQjCNHtremMXOZeAA7pqdSLRqPr2yNIIg>,
>>>>>>>  
>>>>>>> which is currently under review. It would be helpful if you compare the 
>>>>>>> missing features as the work on calculations of Jones polynomial has 
>>>>>>> been 
>>>>>>> included. Also from the source, as far as I understand the 
>>>>>>> representations 
>>>>>>> are mainly Braid Group, but we do have supported other representations 
>>>>>>> such 
>>>>>>> as oriented gauss code and also planar diagram. I guess you could 
>>>>>>> directly 
>>>>>>> contribute to the ticket, if something is missing. 
>>>>>>>
>>>>>>> Thanks,
>>>>>>> Amit.
>>>>>>>
>>>>>>> On Thu, Aug 6, 2015 at 7:30 PM, <fuglede....@gmail.com> wrote:
>>>>>>>
>>>>>>>> Hey sage-devel
>>>>>>>>
>>>>>>>> In work with Egsgaard, I ended up needing an implementation of the 
>>>>>>>> Jones representations of braid groups and figured it made sense to do 
>>>>>>>> it in 
>>>>>>>> sage. While interesting in their own right, they also allow for direct 
>>>>>>>> calculation of the Jones polynomials of the trace closures of the 
>>>>>>>> braids, 
>>>>>>>> and I figured that since sage is currently rather low on quantum 
>>>>>>>> topology 
>>>>>>>> (and knot theory in general), that adding this to the base could be 
>>>>>>>> useful 
>>>>>>>> in general.
>>>>>>>>
>>>>>>>> The development guide suggests suggesting changes here before on 
>>>>>>>> trac, so here you go. The source code is currently available here:
>>>>>>>>     
>>>>>>>> https://github.com/fuglede/jones-representation/blob/master/curverep.sage
>>>>>>>>
>>>>>>>> - Søren
>>>>>>>>
>>>>>>>> -- 
>>>>>>>> You received this message because you are subscribed to the Google 
>>>>>>>> Groups "sage-devel" group.
>>>>>>>> To unsubscribe from this group and stop receiving emails from it, 
>>>>>>>> send an email to sage-devel+...@googlegroups.com.
>>>>>>>> To post to this group, send email to sage-...@googlegroups.com.
>>>>>>>> Visit this group at http://groups.google.com/group/sage-devel.
>>>>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>>>>
>>>>>>>
>>>>>>> -- 
>>>>>> You received this message because you are subscribed to the Google 
>>>>>> Groups "sage-devel" group.
>>>>>> To unsubscribe from this group and stop receiving emails from it, 
>>>>>> send an email to sage-devel+...@googlegroups.com.
>>>>>> To post to this group, send email to sage-...@googlegroups.com.
>>>>>> Visit this group at http://groups.google.com/group/sage-devel.
>>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>>
>>>>>
>>>>>

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.

Reply via email to