gives the specified property for a knot.


gives an image of the knot.


gives a list of knots in the specified class.


  • Prime knots with crossing numbers up to 10 can be specified in AlexanderBriggs notation {n,k} .
  • Knots can also be specified in Dowker notation {i1,i2,i3,}, and in Conway notation "nnnn".
  • Special knot specifications include:
  • {"PretzelKnot",{n1,n2,}}(n1, n2, )-pretzel knot
    {"TorusKnot",{m,n}}(m, n)-torus knot (m, n coprime)
  • Knots with standard names can be specified by their names, such as "Trefoil" and "FigureEight".
  • KnotData[] gives a list of classical named knots.
  • KnotData[All] gives a list of knots that have AlexanderBriggs notations.
  • KnotData["Properties"] gives a list of possible properties for knots.
  • Graphical representations for knots include:
  • "Image"3D image of the knot
    "ImageData"graphics data for the 3D knot image
    "KnotDiagram"2D diagram of the knot
    "KnotDiagramData"graphics data for the 2D knot diagram
  • Region-related representations include:
  • "BoundaryMeshRegion"boundary mesh representation
    "MeshRegion"mesh representation
    "Region"geometric region
  • Invariants for knots include:
  • "ArfInvariant"Arf invariant
    "BraidIndex"braid index
    "BridgeIndex"bridge index
    "ColoringNumberSet"list of colorable numbers
    "ConcordanceOrder"concordance order
    "CrossingNumber"crossing number
    "DegreeThreeVassiliev"degree-3 Vassiliev invariant
    "DegreeTwoVassiliev"degree-2 Vassiliev invariant
    "Genus"genus of knot complement
    "HyperbolicVolume"hyperbolic volume
    "NakanishiIndex"Nakanishi index
    "OzsvathSzaboTau"OzsvathSzabo tau invariant
    "SmoothFourGenus"smooth 4-genus
    "StickNumber"stick number
    "SuperbridgeIndex"superbridge index
    "ThurstonBennequin"ThurstonBennequin number
    "TopologicalFourGenus"topological 4-genus
    "UnknottingNumber"unknotting number
  • Polynomial invariants given as pure functions include:
  • "AlexanderPolynomial"Alexander polynomial
    "BLMHoPolynomial"BLMHo polynomial
    "BracketPolynomial"normalized bracket polynomial
    "ConwayPolynomial"Conway polynomial
    "HOMFLYPolynomial"HOMFLY polynomial
    "JonesPolynomial"Jones polynomial
    "KauffmanPolynomial"Kauffman polynomial
  • Other properties include:
  • "SeifertMatrix"Seifert matrix
    "SpaceCurve"space curve function for a knot embedding
  • Graphical representations for knots as braids include:
  • "BraidDiagram"2D diagram of the knot as a braid
    "BraidDiagramData"graphics data for the 2D braid diagram
    "BraidImage"3D image of the knot as a braid
    "BraidImageData"graphics data for the 3D braid image
  • Notations for knots include:
  • "AlexanderBriggsList"AlexanderBriggs {n,k} list
    "AlexanderBriggsNotation"AlexanderBriggs notation for display
    "BraidWord"braid word as a list
    "BraidWordNotation"braid word in algebraic notation
    "ConwayNotation"Conway notation for display
    "ConwayString"Conway notation as a string
    "DowkerList"Dowker {i1,i2,i3,} list
    "DowkerNotation"Dowker notation for display
  • Naming-related properties include:
  • "AlternateNames"alternate English names
    "Name"English or mathematical name
    "StandardName"standard Wolfram Language name
  • KnotData[knot,"Classes"] gives a list of the classes in which knot occurs.
  • KnotData["class"] gives a list of knots in the specified class.
  • KnotData[knot,"class"] gives True or False depending on whether knot is in the specified class.
  • Basic classes of knots include:
  • "AlmostAlternating"almost alternating
  • Negative classes of knots include:
  • "Composite"not prime
    "NonalmostAlternating"not almost alternating
    "Nonhyperbolic"not hyperbolic
    "Noninvertible"not invertible
    "Nonribbon"not ribbon
    "Nonsatellite"not satellite
    "Nonslice"not slice
    "Nontorus"not torus
    "Nontwist"not twist
  • KnotData[name,"Information"] gives a hyperlink to more information about the knot with the specified name.
  • Using KnotData may require internet connectivity.


open allclose all

Basic Examples  (2)

The trefoil knot:

The Alexander polynomial of the trefoil knot:

Scope  (26)

Names and Classes  (10)

Obtain a list of classical named knots:

Obtain a list of knots that have AlexanderBriggs notations:

A knot can be specified by its standard Wolfram Language name:

Knots can also be specified in AlexanderBriggs notation:

Conway notation:

Dowker notation:

A torus knot is specified by a pair of coprime integers:

A pretzel knot is specified by the number of crossings of its tangles:

Find the English name of a knot:

A list of alternate names can also be found:

Find the list of knot classes:

Find the list of knots belonging to a class:

Test whether an element belongs to a class:

Get a list of classes in which a knot belongs:

A list of knots which are noninvertible and alternating:

Properties  (7)

Get a list of possible properties:

Get a list of available properties for a particular knot:

Image of a knot:

Diagram of a knot:

Get more information about a knot:

Get different notational forms:

Get different notational forms, useful for input:

Property Values  (9)

A property value can be any valid Wolfram Language expression:

Polynomial invariants are given as pure functions:

A space curve for a knot is given as Function or InterpolatingFunction:

3D images of knots are Graphics3D objects:

Get the 3D primitives for the "Image":

2D diagrams of knots are Graphics objects:

Get the 2D primitives for the "KnotDiagram":

A property that is not applicable to a knot has the value Missing["NotApplicable"]:

A property that is not available for a knot has the value Missing["NotAvailable"]:

A property that is unknown for a knot has the value Missing["Unknown"]:

Specify a list of properties for a knot:

Generalizations & Extensions  (4)

Braid index of a knot:

Braid word as a list:

Braid word notation:

Braid image:

Applications  (5)

The 20 amphichiral knots having 10 or fewer crossings:

Number of prime knots per crossing numbers:

The trefoil is a tricolorable knot:

Tricolorable trefoil:

The two-bridge knots are exactly the rational knots:

Number of rational knots per crossing numbers:

A stick knot:

Properties & Relations  (13)

Graphics data of knots can be used in Graphics and Graphics3D:

A 3D image:

A braid image:

Alexander polynomials are symmetric:

Alexander polynomials of oriented knots take values 1 or -1 at 1:

Alexander polynomials can be expressed in terms of the Seifert matrix:

Conway polynomials are modified versions of Alexander polynomials:

Identities for Jones polynomials:

A tori knot has a mirror :

The tori and are equivalent:

Kauffman polynomials are generalizations of Jones polynomials:

Kauffman polynomials extend BLMHo polynomials to two variables:

Kauffman and normalized bracket polynomials:

Relation between normalized bracket polynomials and Jones polynomials:

The Arf invariant of a knot is related to the Alexander polynomial:

Possible Issues  (2)

The Perko pair is represented by the unique knot :

Exactly 165 distinct prime knots with 10 crossings are listed:

Braids of an even pretzel knot are shifted to end with a braid having an even crossing number:

Neat Examples  (6)

A tabbed list of knot diagrams:

Random-colored torus knots:

A torus knot sits on a torus:

The knot :

A pretzel knot rendered with spheres:

Color a knot:

Wolfram Research (2007), KnotData, Wolfram Language function, (updated 2016).


Wolfram Research (2007), KnotData, Wolfram Language function, (updated 2016).


@misc{reference.wolfram_2020_knotdata, author="Wolfram Research", title="{KnotData}", year="2016", howpublished="\url{}", note=[Accessed: 27-February-2021 ]}


@online{reference.wolfram_2020_knotdata, organization={Wolfram Research}, title={KnotData}, year={2016}, url={}, note=[Accessed: 27-February-2021 ]}


Wolfram Language. 2007. "KnotData." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2016.


Wolfram Language. (2007). KnotData. Wolfram Language & System Documentation Center. Retrieved from