Skip to content
This repository was archived by the owner on Jul 24, 2024. It is now read-only.

Commit 28aa996

Browse files
feat(algebra/quandle): Unital shelves (#17839)
Extend shelves to include the unital case, as well as a few basic results about unital shelves from https://arxiv.org/pdf/1603.08590.pdf This culminates in providing a monoid instance for a unital shelf. Co-authored-by: Jim Fowler <fowler@math.osu.edu> Co-authored-by: Yaël Dillies <yael.dillies@gmail.com>
1 parent e97cf15 commit 28aa996

2 files changed

Lines changed: 65 additions & 1 deletion

File tree

docs/references.bib

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -600,6 +600,24 @@ @Book{ coxlittleoshea1997
600600
isbn = {978-0-387-94680-1}
601601
}
602602

603+
@Article{ crans2017,
604+
author = {Crans, Alissa S. and Mukherjee, Sujoy and Przytycki,
605+
J\'{o}zef H.},
606+
title = {On homology of associative shelves},
607+
journal = {J. Homotopy Relat. Struct.},
608+
fjournal = {Journal of Homotopy and Related Structures},
609+
volume = {12},
610+
year = {2017},
611+
number = {3},
612+
pages = {741--763},
613+
issn = {2193-8407},
614+
mrclass = {18G60 (20M32 20N02 57M25)},
615+
mrnumber = {3691304},
616+
mrreviewer = {Mahender Singh},
617+
doi = {10.1007/s40062-016-0164-9},
618+
url = {https://doi.org/10.1007/s40062-016-0164-9}
619+
}
620+
603621
@Book{ davey_priestley,
604622
author = {Davey, B. A. and Priestley, H. A.},
605623
title = {Introduction to lattices and order},

src/algebra/quandle.lean

Lines changed: 47 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ complements that is analogous to the fundamental group of the
3434
exterior, and he showed that the quandle associated to an oriented
3535
knot is invariant up to orientation-reversed mirror image. Racks were
3636
used by Fenn and Rourke for framed codimension-2 knots and
37-
links.[FennRourke1992]
37+
links in [FennRourke1992]. Unital shelves are discussed in [crans2017].
3838
3939
The name "rack" came from wordplay by Conway and Wraith for the "wrack
4040
and ruin" of forgetting everything but the conjugation operation for a
@@ -43,6 +43,7 @@ group.
4343
## Main definitions
4444
4545
* `shelf` is a type with a self-distributive action
46+
* `unital_shelf` is a shelf with a left and right unit
4647
* `rack` is a shelf whose action for each element is invertible
4748
* `quandle` is a rack whose action for an element fixes that element
4849
* `quandle.conj` defines a quandle of a group acting on itself by conjugation.
@@ -54,6 +55,11 @@ group.
5455
* `rack.envel_group` is left adjoint to `quandle.conj` (`to_envel_group.map`).
5556
The universality statements are `to_envel_group.univ` and `to_envel_group.univ_uniq`.
5657
58+
## Implementation notes
59+
60+
"Unital racks" are uninteresting (see `rack.assoc_iff_id`, `unital_shelf.assoc`), so we do not
61+
define them.
62+
5763
## Notation
5864
5965
The following notation is localized in `quandles`:
@@ -92,6 +98,14 @@ class shelf (α : Type u) :=
9298
(act : α → α → α)
9399
(self_distrib : ∀ {x y z : α}, act x (act y z) = act (act x y) (act x z))
94100

101+
/--
102+
A *unital shelf* is a shelf equipped with an element `1` such that, for all elements `x`,
103+
we have both `x ◃ 1` and `1 ◃ x` equal `x`.
104+
-/
105+
class unital_shelf (α : Type u) extends shelf α, has_one α :=
106+
(one_act : ∀ a : α, act 1 a = a)
107+
(act_one : ∀ a : α, act a 1 = a)
108+
95109
/--
96110
The type of homomorphisms between shelves.
97111
This is also the notion of rack and quandle homomorphisms.
@@ -120,6 +134,38 @@ localized "infixr (name := shelf_hom) ` →◃ `:25 := shelf_hom" in quandles
120134

121135
open_locale quandles
122136

137+
namespace unital_shelf
138+
open shelf
139+
140+
variables {S : Type*} [unital_shelf S]
141+
142+
/--
143+
A monoid is *graphic* if, for all `x` and `y`, the *graphic identity*
144+
`(x * y) * x = x * y` holds. For a unital shelf, this graphic
145+
identity holds.
146+
-/
147+
lemma act_act_self_eq (x y : S) : (x ◃ y) ◃ x = x ◃ y :=
148+
begin
149+
have h : (x ◃ y) ◃ x = (x ◃ y) ◃ (x ◃ 1) := by rw act_one,
150+
rw [h, ←shelf.self_distrib, act_one],
151+
end
152+
153+
lemma act_idem (x : S) : (x ◃ x) = x := by rw [←act_one x, ←shelf.self_distrib, act_one, act_one]
154+
155+
lemma act_self_act_eq (x y : S) : x ◃ (x ◃ y) = x ◃ y :=
156+
begin
157+
have h : x ◃ (x ◃ y) = (x ◃ 1) ◃ (x ◃ y) := by rw act_one,
158+
rw [h, ←shelf.self_distrib, one_act],
159+
end
160+
161+
/--
162+
The associativity of a unital shelf comes for free.
163+
-/
164+
lemma assoc (x y z : S) : (x ◃ y) ◃ z = x ◃ y ◃ z :=
165+
by rw [self_distrib, self_distrib, act_act_self_eq, act_self_act_eq]
166+
167+
end unital_shelf
168+
123169
namespace rack
124170
variables {R : Type*} [rack R]
125171

0 commit comments

Comments
 (0)