KnotTheory`
can compute the coloured Jones polynomial of knots and links, using the formulas in [Garoufalidis Le]:
(For In[1] see Setup)
In[2]:=

?ColouredJones

ColouredJones[K, n][q] returns the coloured Jones polynomial of a knot in colour n (i.e., in the (n+1)dimensional representation) in the indeterminate q. Some of these polynomials have been precomputed in KnotTheory`. To force computation, use ColouredJones[K,n, Program > "prog"][q], with "prog" replaced by one of the two available programs, "REngine" or "Braid" (including the quotes). "REngine" (default) computes the invariant for closed knots (as well as links where all components are coloured by the same integer) directly from the MorseLink presentation of the knot, while "Braid" computes the invariant via a presentation of the knot as a braid closure. "REngine" will usually be faster, but it might be better to use "Braid" when (roughly): 1) a "good" braid representative is available for the knot, and 2) the length of this braid is less than the maximum width of the MorseLink presentation of the knot.


In[3]:=

ColouredJones::about

The "REngine" algorithm was written by Siddarth Sankaran in the summer of 2005, while the "Braid" algorithm was written jointly by Dror BarNatan and Stavros Garoufalidis. Both are based on formulas by Thang Le and Stavros Garoufalidis; see [Garoufalidis, S. and Le, T. "The coloured Jones function is qholonomic." Geom. Top., v9, 2005 (12531293)].


Thus, for example, here's the coloured Jones polynomial of the knot
4_1 in the 4dimensional representation of $sl(2)$:
In[4]:=

ColouredJones[Knot[4, 1], 3][q]

Out[4]=

12 11 10 2 2 3 3 2 4 6
3 + q  q  q +    +     3 q + 3 q  2 q +
8 6 4 2
q q q q
8 10 11 12
2 q  q  q + q

And here's the coloured Jones polynomial of the same knot in the two
dimensional representation of $sl(2)$; this better be equal to the ordinary
Jones polynomial of 4_1!
In[5]:=

ColouredJones[Knot[4, 1], 1][q]

Out[5]=

2 1 2
1 + q    q + q
q

In[6]:=

Jones[Knot[4, 1]][q]

Out[6]=

2 1 2
1 + q    q + q
q

In[7]:=

?CJ`Summand

CJ`Summand[br, n] returned a pair {s, vars} where s is the summand in the the big sum that makes up ColouredJones[br, n][q] and where vars is the list of variables that need to be summed over (from 0 to n) to get ColouredJones[br, n][q]. CJ`Summand[K, n] is the same for knots for which a braid representative is known to this program.


The coloured Jones polynomial of 3_1 is computed via a single summation. Indeed,
In[8]:=

s = CJ`Summand[Mirror[Knot[3, 1]], n]

Out[8]=

(3 n)/2 + n CJ`k[1] + (n + 2 CJ`k[1])/2 1
{CJ`q qBinomial[0, 0, ]
CJ`q
1 1
qBinomial[CJ`k[1], 0, ] qBinomial[CJ`k[1], CJ`k[1], ]
CJ`q CJ`q
n 1 n 1
qPochhammer[CJ`q , , 0] qPochhammer[CJ`q , , CJ`k[1]]
CJ`q CJ`q
n  CJ`k[1] 1
qPochhammer[CJ`q , , 0], {CJ`k[1]}}
CJ`q

The symbols in the above formula require a definition:
In[9]:=

?qPochhammer

qPochhammer[a, q, k] represents the qshifted factorial of a in base q with index k. See Eric Weisstein's
http://mathworld.wolfram.com/qPochhammerSymbol.html and Axel Riese's
www.risc.unilinz.ac.at/research/combinat/risc/software/qMultiSum/


In[10]:=

?qBinomial

qBinomial[n, k, q] represents the qbinomial coefficient of n and k in base q. For k<0 it is 0; otherwise it is
qPochhammer[q^(nk+1), q, k] / qPochhammer[q, q, k].


More precisely, qPochhammer[a, q, k]
is
$(a;q)_{k}={\begin{cases}(1a)(1aq)\dots (1aq^{k1})&k>0\\1&k=0\\\left((1aq^{1})(1aq^{2})\dots (1aq^{k})\right)^{1}&k<0\end{cases}}$
and qBinomial[n, k, q]
is
${\binom {n}{k}}_{q}={\begin{cases}{\frac {(q^{nk+1};q)_{k}}{(q;q)_{k}}}&k\geq 0\\0&k<0.\end{cases}}$
The function qExpand
replaces every occurence of a qPochhammer[a, q, k]
symbol or a qBinomial[n, k, q]
symbol by its definition:
In[11]:=

?qExpand

qExpand[expr_] replaces all occurences of qPochhammer and qBinomial in expr by their definitions as products. See the documentation for qPochhammer and for qBinomial for details.


Hence,
In[12]:=

qPochhammer[a, q, 6] // qExpand

Out[12]=

2 3 4 5
(1 + a) (1 + a q) (1 + a q ) (1 + a q ) (1 + a q ) (1 + a q )

In[13]:=

First[s] /. {n > 3, CJ`k[1] > 2} // qExpand

Out[13]=

11 2 3
CJ`q (1 + CJ`q ) (1 + CJ`q )

Finally,
In[14]:=

?ColoredJones

Type ColoredJones and see for yourself.


[Garoufalidis Le] ^ S. Garoufalidis and T. Q. T. Le, The Colored Jones Function is $q$Holonomic, Georgia Institute of Technology preprint, September 2003, arXiv:math.GT/0309214.