Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/acssiohm/tipe_braids
https://github.com/acssiohm/tipe_braids
Last synced: 26 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/acssiohm/tipe_braids
- Owner: Acssiohm
- Created: 2024-12-08T15:25:12.000Z (about 1 month ago)
- Default Branch: main
- Last Pushed: 2024-12-08T15:54:09.000Z (about 1 month ago)
- Last Synced: 2024-12-08T16:31:32.130Z (about 1 month ago)
- Language: Python
- Size: 3.91 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Braids Homotopy
## Create a Braid
Each generator of the Braids group is associated with its number ( strictly positive ), its inverse is associated with the oppsit of the number, and 0 represents the neutral element :
- sigma_k -> k
- sigma_k^-1 -> -k
- epsilon -> 0
Then a braid is a word on those elements, that we represent with a list :
sigma_i.sigma_j.sigma_k^-1 --> `[i, j, -k]`
Thus to create a braid, with l its associated list you can do :
`b = Braid(l)`## Operations on braids
`b1 = Braid(l1)
b2 = Braid(l2)`
- Concatenation / product : `b_product = b1*b2`
- Power : `b_power_k = b**k`
Note that the power can be negative or zero ( but must be an integer )
- Divison : `b_fraction = b1/b2`
- Comparison/Test equivalence : `is_equivalent = (b1 == b2)`
- Methods of testing homotopy :
- "Retournement de sous-mots" : `b.retournement_sous_mots()`
- "Réduction de poignées"(default) : `b.reduction_poignees()`
- Print :
Example : `b = Braid([1, 2, 0, -2])`
- Replacing with letters (default) :
`print(b)` or `print(b.to_letters())` prints `ab.B`
- With numbers :
`print(b.to_string())` prints `(1)(2)(0)(-2)`