{"id":13830327,"url":"https://github.com/UniMath/SymmetryBook","last_synced_at":"2025-07-09T11:32:41.585Z","repository":{"id":41308935,"uuid":"151734872","full_name":"UniMath/SymmetryBook","owner":"UniMath","description":"This book will be an undergraduate textbook written in the univalent style, taking advantage of the presence of symmetry in the logic at an early stage.","archived":false,"fork":false,"pushed_at":"2024-11-08T09:17:33.000Z","size":5837,"stargazers_count":382,"open_issues_count":77,"forks_count":22,"subscribers_count":35,"default_branch":"master","last_synced_at":"2024-11-08T10:24:26.935Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"HTML","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"cc-by-sa-4.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/UniMath.png","metadata":{"files":{"readme":"README.md","changelog":"history.tex","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-10-05T14:41:47.000Z","updated_at":"2024-11-08T09:14:14.000Z","dependencies_parsed_at":"2023-02-15T22:01:10.718Z","dependency_job_id":"26b37f83-1b33-4354-9861-ef81727a0768","html_url":"https://github.com/UniMath/SymmetryBook","commit_stats":{"total_commits":1464,"total_committers":21,"mean_commits":69.71428571428571,"dds":0.7308743169398907,"last_synced_commit":"4376e7b44f3dbd5fff2a1dc547de096334785a76"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/UniMath%2FSymmetryBook","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/UniMath%2FSymmetryBook/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/UniMath%2FSymmetryBook/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/UniMath%2FSymmetryBook/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/UniMath","download_url":"https://codeload.github.com/UniMath/SymmetryBook/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":225539377,"owners_count":17485314,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-04T10:00:58.668Z","updated_at":"2025-07-09T11:32:41.580Z","avatar_url":"https://github.com/UniMath.png","language":"HTML","funding_links":[],"categories":["HTML",":slot_machine: [Various Topics](Various-Topics)"],"sub_categories":[],"readme":"# SymmetryBook\nThis book will be a textbook written in the univalent style, taking advantage of the presence of symmetry in the logic at an early stage.\n\n## Style guide\n\n- Try to be informal.  Use as few formulas as possible, especially for the parts about type theory and logic, to ease the entry into group theory.\n- We call objects in a type *elements* of that type even if the type is not a set.\n- An element of a proposition can be called a *proof*.\n- Identity types are denoted in general using the macro \\eqto, which produces ⥱ (that is an arrow with an = on top). An element of an identity type is called an *identification*, and otherwise a *path*. We may say that it shows how to *identify* two elements.\n  If the type is a set, we may denote its identity types by a = b and call them *equations*. When a = b has an element we say that a and b are *equal*.\n- Types similar to identity types, like the type of eqivalences from A to B, are also denoted with a macro ending in \"to\", like \\equivto, producing ⥲ (that is an arrow with an equivalence sign on top).\n- The type containing the variable in a family is called the \"parameter type\", not the \"index type\", nor the \"base type\".\n- Being equal by definiton is denoted with three lines and is called just that, and not *definitionally equal* or *judgmentally equal*.\n- A synonym of \"function\" is \"map\".  We don't use \"mapping\" or \"application\" as synonyms.\n- In the preliminary chapters (up to subgroups), the underlying set map U from groups to sets has to be applied explicitly. Thereafter, it can be a coercion.\n- Composition of p: a⥱b and q: b⥱c is denoted by either p∗q (p\\ct q), or by q·p (q\\cdot p), qp or q∘p (q\\circ p). The latter is preferred when p and q come from equivalences.\n- In dependent pairs, components having propositional type may be omitted.\n- If x is a bound variable and c is less bound, then we prefer c ⥱ x to x ⥱ c. Typically, if c is the center of contraction.\n- If k and n are number variables that can be renamed, then we prefer k \u003c n to k \u003e n or n \u003c k.\n- *up to* versus *modulo* regarding a group action: *Up to* is the stacky version, the orbit type (typically for us, a groupoid), whereas *modulo* refers to the set of connected components/the set of orbits. For example, given a group G, we have the groupoid of elements up to conjugation versus the set of elements modulo conjugation.\n- Globally defined constants are typeset roman, while variables are italic. One exception is the *B* construction: The B matches whatever it operates on and joins to it without any space.\n- When a structure is introduced and unpacked at the same time, use ≡ to connect the new variable with the unpacked parts. For example: “Let M ≡ (S,ι,μ) be a monoid”.\n- Hints to exercises go in footnotes in the margin, with the footnote marker at the end of the exercise.\n- Margin notes should usually to be made as footnotes (i.e., with a footnote marker).\n- For a G-set X, we also write X for the underlying set, and we may write X^z to mean X twisted by a G-shape z : BG.\n- Whenever possible, do not use a letter for a variable when the same letter is being used as an operator. E.g., try to avoid a variable B when the classifying type/map operator B is used in the same paragraph.\n- Use macros with mathematical meaning, such as \\conncomp, whenever possible, for uniformity of notation.\n- Avoid the use of acronyms, such as LEM and LPO.\n- Construct sort-order keys for glossary entries this way:\n  + for unary operators, use 1 followed by something (e.g., for $-y$ use (1-);\n  + for binary operators, use 2 followed by something (e.g., for $x+y$ use (2+);\n  + for numbers, use 8 followed by the number (e.g., for $0$ use (80).\n  + for identifiers in the Greek alphabet use 9 followed by the 2-digit ordinal number of the first letter (for proper alphabetization) and then something (e.g., for $\\loops$ use (924Omega):\n    ```\n    01 Α α, 02 Β β, 03 Γ γ, 04 Δ δ, 05 Ε ε, 06 Ζ ζ, 07 Η η, 08 Θ θ, 09 Ι ι,\n    10 Κ κ, 11 Λ λ, 12 Μ μ, 13 Ν ν, 14 Ξ ξ, 15 Ο ο, 16 Π π, 17 Ρ ρ, 18 Σ σ, 19 Τ τ,\n    20 Υ υ, 21 Φ φ, 22 Χ χ, 23 Ψ ψ, and 24 Ω ω;\n    ```\n  + for identifiers in the Roman alphabet use the name (e.g., for $\\Ker$ use (Ker) or (ker);\n- Given a: A, we refer to elements of a ⥱ a as either symmetries *of* a, or symmetries *in* A.\n\n## Current draft of the book\n\nGo [here for the current draft of the book](https://unimath.github.io/SymmetryBook/book.pdf).\n\n## Compiling the book\n\nTo speed up compilation while writing the book, we cache the macros as a TeX format, and we externalize most of the figures,\nso that they're only compiled once (or when necessary after changes to them).\nThis is managed with the Makefile, so just run `make`. The first run takes about 5–10 minutes, but subsequent compilations should finish in seconds.\n\n## An icosahedron for your viewing pleasure\n\nGo [here for an interactive icosahedron](https://unimath.github.io/SymmetryBook/icosahedron.html)\nand [here for a Cayley diagram of the icosahedral group](https://unimath.github.io/SymmetryBook/icocayley.html).\n\nShield: [![CC BY-SA 4.0][cc-by-sa-shield]][cc-by-sa]\n\nThis work is licensed under a\n[Creative Commons Attribution-ShareAlike 4.0 International License][cc-by-sa].\n\n[![CC BY-SA 4.0][cc-by-sa-image]][cc-by-sa]\n\n[cc-by-sa]: http://creativecommons.org/licenses/by-sa/4.0/\n[cc-by-sa-image]: https://licensebuttons.net/l/by-sa/4.0/88x31.png\n[cc-by-sa-shield]: https://img.shields.io/badge/License-CC%20BY--SA%204.0-lightgrey.svg\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FUniMath%2FSymmetryBook","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FUniMath%2FSymmetryBook","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FUniMath%2FSymmetryBook/lists"}