Copyright | Adam Saltz |
---|---|
License | BSD3 |
Maintainer | saltz.adam@gmail.com |
Stability | experimental |
Safe Haskell | Safe |
Language | Haskell2010 |
Longer description to come.
- data Braid = Braid {
- braidWidth :: Int
- braidWord :: [Int]
- data Node a
- type Resolution = [Int]
- type Component = Set Int
- data BDiagram = BDiagram {}
- braidToPD :: Braid -> PD
- crossingToNodes :: Int -> Int -> Int -> [Node Int]
- resolve :: PD -> Resolution -> PD
- resolutions :: PD -> [PD]
- resolutionToComponents :: PD -> Set Component
- cubeOfResolutions :: PD -> [BDiagram]
- braidCube :: Braid -> [BDiagram]
- mirror :: Braid -> Braid
- allRes :: PD -> [Resolution]
Documentation
A Braid
is a width and word.
Integers in the word represent Artin generators and their invereses. E.g. [1,3,-2]
represents the word sigma_1sigma_3sigma_2^{-1}.
Braid | |
|
type Resolution = [Int] Source
A Resolution
is a collection of integers. These should all be 0 or 1. At some point I will change this to
type Resolution = [Resolution']
and data Resolution' = One | Zero deriving (Show, Eq, Ord)
or somesuch.
A resolved BDiagram
has a Resolution
and a set of Component
s.
resolve :: PD -> Resolution -> PD Source
Take a PD
and a Resolution
and returns the resolved PD
.
Note that the output is always a list of Join
s.
resolutions :: PD -> [PD] Source
Compute all resolutions of a PD
.
resolutionToComponents :: PD -> Set Component Source
This is the only use for Data.Graph.
cubeOfResolutions :: PD -> [BDiagram] Source
Take a PD
and returns a list of all the BDiagram
s of its Resolution
s.
allRes :: PD -> [Resolution] Source
Utility function to return all the resolutions of a planar diagram. This amounts to all sequences of 0s and 1s of some length.