From 166523c8057bcb4bd43452acfff741a8e791c697 Mon Sep 17 00:00:00 2001 From: breandan Date: Sun, 25 Oct 2020 09:58:32 -0400 Subject: [PATCH 1/2] convert to svg for readme --- graph.svg | 334 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 334 insertions(+) create mode 100644 graph.svg diff --git a/graph.svg b/graph.svg new file mode 100644 index 0000000..fce632f --- /dev/null +++ b/graph.svg @@ -0,0 +1,334 @@ + + + + + + +algebraic_structures + + + +Magma + +Magma (a, +) +(+) :: a -> a -> a + + + +Semigroup + +Semigroup (a, +) +∀a b c. (a + b) + c = a + (b + c) + + + +Magma->Semigroup + + + + + +Monoid + +Monoid (a, +, 0) +0 :: a +∀a. a + 0 = 0 + a = a + + + +Semigroup->Monoid + + + + + +Group + +Group (a, +, 0) +∀a ∃b. a + b = b + a = 0 + + + +Monoid->Group + + + + + +CommutativeMonoid + +Commutative Monoid (a, +, 0) +∀a b. a + b = b + a + + + +Monoid->CommutativeMonoid + + + + + +Abelian + +Abelian (a, +, 0) + + + +Group->Abelian + + + + + +CommutativeMonoid->Abelian + + + + + +RingLike + +Ring-Like (a, +, *) +(+) :: a -> a -> a +(*) :: a -> a -> a +Monoid (a, +, 0) +Semigroup (a, *) + + + +LeftSeminearring + +Left-Seminearring (a, +, *, 0) +a * (b + c) = a * b + a * c +a * 0 = 0 + + + +RingLike->LeftSeminearring + + + + + +RightSeminearring + +Right-Seminearring (a, +, *, 0) +(a + b) * c = a * c + b * c +0 * a = 0 + + + +RingLike->RightSeminearring + + + + + +LeftNearring + +Left-Nearring (a, +, *, 0) +Group (a, +, 0) + + + +LeftSeminearring->LeftNearring + + + + + +Semiring + +Semiring (a, +, *, 0, 1) +Commutative Monoid (a, +, 0) +Monoid (a, *, 1) + + + +LeftSeminearring->Semiring + + + + + +RightNearring + +Right-Nearring (a, +, *, 0) +Group (a, +, 0) + + + +RightSeminearring->RightNearring + + + + + +RightSeminearring->Semiring + + + + + +Ring + +Ring (a, +, *, 0, 1) + + + +LeftNearring->Ring + + + + + +RightNearring->Ring + + + + + +Semiring->Ring + + + + + +CommutativeRing + +Commutative Ring (a, +, *, 0, 1) +Commutative Monoid (a, *, 1) + + + +Ring->CommutativeRing + + + + + +DivisionRing + +Division Ring (a, +, *, 0, 1) +Group (a - {0}, *, 1) + + + +Ring->DivisionRing + + + + + +Field + +Field (a, +, *, 0, 1) + + + +CommutativeRing->Field + + + + + +DivisionRing->Field + + + + + +Eq + +Equivalence (a, ==) +(==) :: a -> a -> Bool +∀a. a == a +∀a b. a == b = b == a +∀a b c. a == b and b == c → a == c + + + +POrd + +Partial Order (a, ≥) +(≥) :: a -> a -> Bool +a == b = a ≥ b and b ≥ a +∀a. a ≥ a +∀a b c. a ≥ b and b ≥ c → a ≥ c + + + +Eq->POrd + + + + + +MeetSemilattice + +Meet Semilattice (a, ∧, ==) +∀a b c. a ∧ (b ∧ c) = (a ∧ b) ∧ c +∀a b. a ∧ b = b ∧ a +∀a. a ∧ a = a +a ≥ b = a ∧ b == b + + + +POrd->MeetSemilattice + + + + + +JoinSemilattice + +Join Semilattice (a, ∨, ==) +∀a b c. a ∨ (b ∨ c) = (a ∨ b) ∨ c +∀a b. a ∨ b = b ∨ a +∀a. a ∨ a = a +a ≥ b = a ∨ b == a + + + +POrd->JoinSemilattice + + + + + +Lattice + +Lattice (a, ∧, ∨, ==) + + + +MeetSemilattice->Lattice + + + + + +JoinSemilattice->Lattice + + + + + +Ord + +Total Order (a, ≥) +∀a b. a ≥ b or b ≥ a +a ∧ b | a ≥ b → b | b ≥ a → a +a ∨ b | a ≥ b → a | b ≥ a → b + + + +Lattice->Ord + + + + + From 33c9b1c22723a42b5a444aaf684daf2e80623630 Mon Sep 17 00:00:00 2001 From: breandan Date: Sun, 25 Oct 2020 10:01:36 -0400 Subject: [PATCH 2/2] Update README.md --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index ddc54db..e22c8f6 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,4 @@ # algebraic-structures A gv file representing the relationships between various algebraic structures. + +![](graph.svg)