# The circle
```agda
module synthetic-homotopy-theory.circle where
```
<details><summary>Imports</summary>
```agda
open import foundation.0-connected-types
open import foundation.action-on-identifications-dependent-functions
open import foundation.action-on-identifications-functions
open import foundation.commuting-squares-of-identifications
open import foundation.contractible-types
open import foundation.coproduct-types
open import foundation.dependent-identifications
open import foundation.dependent-pair-types
open import foundation.equivalences
open import foundation.function-types
open import foundation.homotopies
open import foundation.identity-types
open import foundation.mere-equality
open import foundation.negated-equality
open import foundation.negation
open import foundation.propositional-truncations
open import foundation.propositions
open import foundation.retractions
open import foundation.sections
open import foundation.transport-along-identifications
open import foundation.universe-levels
open import foundation.whiskering-identifications-concatenation
open import higher-group-theory.higher-groups
open import structured-types.pointed-types
open import synthetic-homotopy-theory.dependent-suspension-structures
open import synthetic-homotopy-theory.free-loops
open import synthetic-homotopy-theory.spheres
open import synthetic-homotopy-theory.suspension-structures
open import synthetic-homotopy-theory.suspensions-of-types
open import synthetic-homotopy-theory.universal-cover-circle
open import synthetic-homotopy-theory.universal-property-circle
open import univalent-combinatorics.standard-finite-types
```
</details>
## Idea
**The circle** is the initial type equipped with a base point and a
[loop](synthetic-homotopy-theory.loop-spaces.md).
## Postulates
```agda
postulate
πΒΉ : UU lzero
postulate
base-πΒΉ : πΒΉ
postulate
loop-πΒΉ : base-πΒΉ οΌ base-πΒΉ
free-loop-πΒΉ : free-loop πΒΉ
free-loop-πΒΉ = base-πΒΉ , loop-πΒΉ
πΒΉ-Pointed-Type : Pointed-Type lzero
πΒΉ-Pointed-Type = πΒΉ , base-πΒΉ
postulate
ind-πΒΉ : induction-principle-circle free-loop-πΒΉ
```
## Properties
### The dependent universal property of the circle
```agda
dependent-universal-property-πΒΉ :
dependent-universal-property-circle free-loop-πΒΉ
dependent-universal-property-πΒΉ =
dependent-universal-property-induction-principle-circle free-loop-πΒΉ ind-πΒΉ
uniqueness-dependent-universal-property-πΒΉ :
{l : Level} {P : πΒΉ β UU l} (k : free-dependent-loop free-loop-πΒΉ P) β
is-contr
( Ξ£ ( (x : πΒΉ) β P x)
( Ξ» h β
Eq-free-dependent-loop free-loop-πΒΉ P
( ev-free-loop-Ξ free-loop-πΒΉ P h) k))
uniqueness-dependent-universal-property-πΒΉ {l} {P} =
uniqueness-dependent-universal-property-circle
free-loop-πΒΉ
dependent-universal-property-πΒΉ
module _
{l : Level} (P : πΒΉ β UU l) (p0 : P base-πΒΉ) (Ξ± : tr P loop-πΒΉ p0 οΌ p0)
where
Ξ -πΒΉ : UU l
Ξ -πΒΉ =
Ξ£ ( (x : πΒΉ) β P x)
( Ξ» h β
Eq-free-dependent-loop free-loop-πΒΉ P
( ev-free-loop-Ξ free-loop-πΒΉ P h) (p0 , Ξ±))
apply-dependent-universal-property-πΒΉ : Ξ -πΒΉ
apply-dependent-universal-property-πΒΉ =
center (uniqueness-dependent-universal-property-πΒΉ (p0 , Ξ±))
function-apply-dependent-universal-property-πΒΉ : (x : πΒΉ) β P x
function-apply-dependent-universal-property-πΒΉ =
pr1 apply-dependent-universal-property-πΒΉ
base-dependent-universal-property-πΒΉ :
function-apply-dependent-universal-property-πΒΉ base-πΒΉ οΌ p0
base-dependent-universal-property-πΒΉ =
pr1 (pr2 apply-dependent-universal-property-πΒΉ)
loop-dependent-universal-property-πΒΉ :
( apd function-apply-dependent-universal-property-πΒΉ loop-πΒΉ β
base-dependent-universal-property-πΒΉ) οΌ
( ap (tr P loop-πΒΉ) base-dependent-universal-property-πΒΉ β Ξ±)
loop-dependent-universal-property-πΒΉ =
pr2 (pr2 apply-dependent-universal-property-πΒΉ)
```
### The universal property of the circle
```agda
universal-property-πΒΉ : universal-property-circle free-loop-πΒΉ
universal-property-πΒΉ =
universal-property-dependent-universal-property-circle
( free-loop-πΒΉ)
( dependent-universal-property-πΒΉ)
uniqueness-universal-property-πΒΉ :
{l : Level} {X : UU l} (Ξ± : free-loop X) β
is-contr
( Ξ£ ( πΒΉ β X)
( Ξ» h β Eq-free-loop (ev-free-loop free-loop-πΒΉ X h) Ξ±))
uniqueness-universal-property-πΒΉ {l} {X} =
uniqueness-universal-property-circle free-loop-πΒΉ universal-property-πΒΉ X
module _
{l : Level} {X : UU l} (x : X) (Ξ± : x οΌ x)
where
Map-πΒΉ : UU l
Map-πΒΉ =
Ξ£ ( πΒΉ β X)
( Ξ» h β Eq-free-loop (ev-free-loop free-loop-πΒΉ X h) (x , Ξ±))
apply-universal-property-πΒΉ : Map-πΒΉ
apply-universal-property-πΒΉ =
center (uniqueness-universal-property-πΒΉ (x , Ξ±))
map-apply-universal-property-πΒΉ : πΒΉ β X
map-apply-universal-property-πΒΉ =
pr1 apply-universal-property-πΒΉ
base-universal-property-πΒΉ :
map-apply-universal-property-πΒΉ base-πΒΉ οΌ x
base-universal-property-πΒΉ =
pr1 (pr2 apply-universal-property-πΒΉ)
loop-universal-property-πΒΉ :
ap map-apply-universal-property-πΒΉ loop-πΒΉ β base-universal-property-πΒΉ οΌ
base-universal-property-πΒΉ β Ξ±
loop-universal-property-πΒΉ =
pr2 (pr2 apply-universal-property-πΒΉ)
```
### The loop of the circle is nontrivial
```agda
is-nontrivial-loop-πΒΉ : loop-πΒΉ β refl
is-nontrivial-loop-πΒΉ =
is-nontrivial-loop-dependent-universal-property-circle
( free-loop-πΒΉ)
( dependent-universal-property-πΒΉ)
```
### The circle is 0-connected
```agda
mere-eq-πΒΉ : (x y : πΒΉ) β mere-eq x y
mere-eq-πΒΉ =
function-apply-dependent-universal-property-πΒΉ
( Ξ» x β (y : πΒΉ) β mere-eq x y)
( function-apply-dependent-universal-property-πΒΉ
( mere-eq base-πΒΉ)
( refl-mere-eq base-πΒΉ)
( eq-is-prop is-prop-type-trunc-Prop))
( eq-is-prop (is-prop-Ξ (Ξ» y β is-prop-type-trunc-Prop)))
is-0-connected-πΒΉ : is-0-connected πΒΉ
is-0-connected-πΒΉ = is-0-connected-mere-eq base-πΒΉ (mere-eq-πΒΉ base-πΒΉ)
```
### The circle as a higher group
```agda
πΒΉ-β-Group : β-Group lzero
pr1 πΒΉ-β-Group = πΒΉ-Pointed-Type
pr2 πΒΉ-β-Group = is-0-connected-πΒΉ
```
### The circle is equivalent to the 1-sphere
The [1-sphere](synthetic-homotopy-theory.spheres.md) is defined as the
[suspension](synthetic-homotopy-theory.suspensions-of-types.md) of the
[0-sphere](synthetic-homotopy-theory.spheres.md). We may understand this as the
1-sphere having two points `N` and `S` and two
[identifications](foundation-core.identity-types.md) (meridians) `e, w : N = S`
between them. The following shows that the 1-sphere and the circle are
[equivalent](foundation-core.equivalences.md).
#### The map from the circle to the 1-sphere
The map from the circle to the 1-sphere is defined by mapping the basepoint to
`N` and the loop to the composite of `e` and the inverse of `w`, which forms a
loop at `N`. The choice of which meridian to start with is arbitrary, but
informs the rest of the construction hereafter.
```agda
north-sphere-1-loop : north-sphere 1 οΌ north-sphere 1
north-sphere-1-loop =
( meridian-sphere 0 (zero-Fin 1)) β
( inv (meridian-sphere 0 (one-Fin 1)))
sphere-1-circle : πΒΉ β sphere 1
sphere-1-circle =
map-apply-universal-property-πΒΉ (north-sphere 1) north-sphere-1-loop
sphere-1-circle-base-πΒΉ-eq-north-sphere-1 :
sphere-1-circle base-πΒΉ οΌ north-sphere 1
sphere-1-circle-base-πΒΉ-eq-north-sphere-1 =
base-universal-property-πΒΉ (north-sphere 1) north-sphere-1-loop
sphere-1-circle-base-πΒΉ-eq-south-sphere-1 :
sphere-1-circle base-πΒΉ οΌ south-sphere 1
sphere-1-circle-base-πΒΉ-eq-south-sphere-1 =
( sphere-1-circle-base-πΒΉ-eq-north-sphere-1) β
( meridian-sphere 0 (one-Fin 1))
```
#### The map from the 1-sphere to the circle
The map from the 1-sphere to the circle is defined by mapping both `N` and `S`
to the basepoint, `e` to the loop and `w` to `refl` at the basepoint. Were we to
map both meridians to the loop, we would wrap the 1-sphere twice around the
circle, which would not form an equivalence.
```agda
map-sphere-0-eq-base-πΒΉ : (sphere 0) β base-πΒΉ οΌ base-πΒΉ
map-sphere-0-eq-base-πΒΉ (inl n) = loop-πΒΉ
map-sphere-0-eq-base-πΒΉ (inr n) = refl
suspension-structure-sphere-0-πΒΉ :
suspension-structure (sphere 0) πΒΉ
pr1 suspension-structure-sphere-0-πΒΉ = base-πΒΉ
pr1 (pr2 suspension-structure-sphere-0-πΒΉ) = base-πΒΉ
pr2 (pr2 suspension-structure-sphere-0-πΒΉ) = map-sphere-0-eq-base-πΒΉ
circle-sphere-1 : sphere 1 β πΒΉ
circle-sphere-1 =
cogap-suspension
( suspension-structure-sphere-0-πΒΉ)
circle-sphere-1-north-sphere-1-eq-base-πΒΉ :
circle-sphere-1 (north-sphere 1) οΌ base-πΒΉ
circle-sphere-1-north-sphere-1-eq-base-πΒΉ =
compute-north-cogap-suspension
( suspension-structure-sphere-0-πΒΉ)
circle-sphere-1-south-sphere-1-eq-base-πΒΉ :
circle-sphere-1 (south-sphere 1) οΌ base-πΒΉ
circle-sphere-1-south-sphere-1-eq-base-πΒΉ =
compute-south-cogap-suspension
( suspension-structure-sphere-0-πΒΉ)
```
#### The map from the circle to the 1-sphere has a section
Some care needs to be taken when proving this part of the equivalence. The point
`N` is mapped to the basepoint and then back to `N`, but so is the point `S`. It
needs to be further identified back with `S` using the meridian `w`. The
meridian `w` is thus mapped to `refl` and then back to `w β refl = w`, while the
meridian `e` is mapped to the loop and then back to `w β wβ»ΒΉβ e = e`.
```agda
sphere-1-circle-sphere-1-north-sphere-1 :
( sphere-1-circle (circle-sphere-1 (north-sphere 1))) οΌ ( north-sphere 1)
sphere-1-circle-sphere-1-north-sphere-1 =
( ap sphere-1-circle circle-sphere-1-north-sphere-1-eq-base-πΒΉ) β
( sphere-1-circle-base-πΒΉ-eq-north-sphere-1)
sphere-1-circle-sphere-1-south-sphere-1 :
( sphere-1-circle (circle-sphere-1 (south-sphere 1))) οΌ ( south-sphere 1)
sphere-1-circle-sphere-1-south-sphere-1 =
( ap sphere-1-circle circle-sphere-1-south-sphere-1-eq-base-πΒΉ) β
( sphere-1-circle-base-πΒΉ-eq-south-sphere-1)
apply-up-suspension-meridian-suspension-sphere-1-circle-sphere-1 :
( n : Fin 2) β
coherence-square-identifications
( ap
( sphere-1-circle)
( ( circle-sphere-1-north-sphere-1-eq-base-πΒΉ) β
( map-sphere-0-eq-base-πΒΉ n)))
( ap sphere-1-circle (ap circle-sphere-1 (meridian-suspension n)))
( sphere-1-circle-base-πΒΉ-eq-south-sphere-1)
( sphere-1-circle-sphere-1-south-sphere-1)
apply-up-suspension-meridian-suspension-sphere-1-circle-sphere-1
n =
( inv
( assoc
( ap sphere-1-circle (ap circle-sphere-1 (meridian-suspension n)))
( ap sphere-1-circle circle-sphere-1-south-sphere-1-eq-base-πΒΉ)
( sphere-1-circle-base-πΒΉ-eq-south-sphere-1))) β
( right-whisker-concat
( inv
( ap-concat
( sphere-1-circle)
( ap circle-sphere-1 (meridian-sphere 0 n))
( circle-sphere-1-south-sphere-1-eq-base-πΒΉ)))
( sphere-1-circle-base-πΒΉ-eq-south-sphere-1)) β
( ap
( Ξ» x β
( ap sphere-1-circle x) β
( sphere-1-circle-base-πΒΉ-eq-south-sphere-1))
( compute-meridian-cogap-suspension
( suspension-structure-sphere-0-πΒΉ)
( n)))
apply-loop-universal-property-πΒΉ-sphere-1-circle-sphere-1 :
coherence-square-identifications
( sphere-1-circle-base-πΒΉ-eq-north-sphere-1)
( ap sphere-1-circle loop-πΒΉ)
( meridian-sphere 0 (zero-Fin 1))
( sphere-1-circle-base-πΒΉ-eq-south-sphere-1)
apply-loop-universal-property-πΒΉ-sphere-1-circle-sphere-1 =
( inv
( assoc
( ap sphere-1-circle loop-πΒΉ)
( sphere-1-circle-base-πΒΉ-eq-north-sphere-1)
( meridian-sphere 0 (one-Fin 1)))) β
( right-whisker-concat
( loop-universal-property-πΒΉ
( north-sphere 1)
( north-sphere-1-loop))
( meridian-sphere 0 (one-Fin 1))) β
( assoc
( sphere-1-circle-base-πΒΉ-eq-north-sphere-1)
( north-sphere-1-loop)
( meridian-sphere 0 (one-Fin 1))) β
( left-whisker-concat
( sphere-1-circle-base-πΒΉ-eq-north-sphere-1)
( is-section-inv-concat'
( meridian-sphere 0 (one-Fin 1))
( meridian-sphere 0 (zero-Fin 1))))
map-sphere-1-circle-sphere-1-meridian :
( n : Fin 2) β
( dependent-identification
( Ξ» x β (sphere-1-circle (circle-sphere-1 x)) οΌ x)
( meridian-suspension-structure
( suspension-structure-suspension (Fin 2))
( n))
( sphere-1-circle-sphere-1-north-sphere-1)
( sphere-1-circle-sphere-1-south-sphere-1))
map-sphere-1-circle-sphere-1-meridian (inl (inr n)) =
map-compute-dependent-identification-eq-value-comp-id
( sphere-1-circle)
( circle-sphere-1)
( meridian-sphere 0 (inl (inr n)))
( sphere-1-circle-sphere-1-north-sphere-1)
( sphere-1-circle-sphere-1-south-sphere-1)
( ( apply-up-suspension-meridian-suspension-sphere-1-circle-sphere-1
( inl (inr n))) β
( right-whisker-concat
( ap-concat
( sphere-1-circle)
( circle-sphere-1-north-sphere-1-eq-base-πΒΉ)
( loop-πΒΉ))
( sphere-1-circle-base-πΒΉ-eq-south-sphere-1)) β
( assoc
( ap sphere-1-circle (circle-sphere-1-north-sphere-1-eq-base-πΒΉ))
( ap sphere-1-circle loop-πΒΉ)
( sphere-1-circle-base-πΒΉ-eq-south-sphere-1)) β
( left-whisker-concat
( ap sphere-1-circle (circle-sphere-1-north-sphere-1-eq-base-πΒΉ))
( apply-loop-universal-property-πΒΉ-sphere-1-circle-sphere-1)) β
( inv
( assoc
( ap sphere-1-circle (circle-sphere-1-north-sphere-1-eq-base-πΒΉ))
( sphere-1-circle-base-πΒΉ-eq-north-sphere-1)
( meridian-sphere 0 (zero-Fin 1)))))
map-sphere-1-circle-sphere-1-meridian (inr n) =
map-compute-dependent-identification-eq-value-comp-id
( sphere-1-circle)
( circle-sphere-1)
( meridian-sphere 0 (inr n))
( sphere-1-circle-sphere-1-north-sphere-1)
( sphere-1-circle-sphere-1-south-sphere-1)
( ( apply-up-suspension-meridian-suspension-sphere-1-circle-sphere-1
( inr n)) β
( ap
( Ξ» x β
( ap sphere-1-circle x) β
( sphere-1-circle-base-πΒΉ-eq-south-sphere-1))
( right-unit {p = circle-sphere-1-north-sphere-1-eq-base-πΒΉ})) β
( inv
( assoc
( ap sphere-1-circle circle-sphere-1-north-sphere-1-eq-base-πΒΉ)
( sphere-1-circle-base-πΒΉ-eq-north-sphere-1)
( meridian-sphere 0 (one-Fin 1)))))
dependent-suspension-structure-sphere-1-circle-sphere-1 :
dependent-suspension-structure
( Ξ» x β (sphere-1-circle (circle-sphere-1 x)) οΌ x)
( suspension-structure-suspension (Fin 2))
pr1 dependent-suspension-structure-sphere-1-circle-sphere-1 =
sphere-1-circle-sphere-1-north-sphere-1
pr1 (pr2 dependent-suspension-structure-sphere-1-circle-sphere-1) =
sphere-1-circle-sphere-1-south-sphere-1
pr2 (pr2 dependent-suspension-structure-sphere-1-circle-sphere-1) =
map-sphere-1-circle-sphere-1-meridian
sphere-1-circle-sphere-1 : section sphere-1-circle
pr1 sphere-1-circle-sphere-1 = circle-sphere-1
pr2 sphere-1-circle-sphere-1 =
dependent-cogap-suspension
( Ξ» x β (sphere-1-circle (circle-sphere-1 x)) οΌ x)
( dependent-suspension-structure-sphere-1-circle-sphere-1)
```
#### The map from the circle to the 1-sphere has a retraction
The basepoint is mapped to `N` and then back to the basepoint, while the loop is
mapped to `wβ»ΒΉβ e` and then back to `reflβ»ΒΉ β loop = loop`.
```agda
circle-sphere-1-circle-base-πΒΉ :
circle-sphere-1 (sphere-1-circle base-πΒΉ) οΌ base-πΒΉ
circle-sphere-1-circle-base-πΒΉ =
( ap circle-sphere-1 sphere-1-circle-base-πΒΉ-eq-north-sphere-1) β
( circle-sphere-1-north-sphere-1-eq-base-πΒΉ)
apply-up-suspension-meridian-one-suspension-circle-sphere-1-circle :
coherence-square-identifications
( refl)
( ap circle-sphere-1 (inv (meridian-sphere 0 (one-Fin 1))))
( circle-sphere-1-south-sphere-1-eq-base-πΒΉ)
( circle-sphere-1-north-sphere-1-eq-base-πΒΉ)
apply-up-suspension-meridian-one-suspension-circle-sphere-1-circle =
( right-whisker-concat
( ap-inv
( circle-sphere-1)
( meridian-suspension (one-Fin 1)))
( circle-sphere-1-north-sphere-1-eq-base-πΒΉ)) β
( inv right-unit) β
( assoc
( inv (ap circle-sphere-1 (meridian-suspension (one-Fin 1))))
( circle-sphere-1-north-sphere-1-eq-base-πΒΉ)
( refl)) β
( left-whisker-concat
( inv (ap circle-sphere-1 (meridian-suspension (one-Fin 1))))
( inv
( compute-meridian-cogap-suspension
( suspension-structure-sphere-0-πΒΉ)
( one-Fin 1)))) β
( inv
( assoc
( inv (ap circle-sphere-1 (meridian-suspension (one-Fin 1))))
( ap circle-sphere-1 (meridian-suspension (one-Fin 1)))
( circle-sphere-1-south-sphere-1-eq-base-πΒΉ))) β
( right-whisker-concat
( left-inv (ap circle-sphere-1 (meridian-suspension (one-Fin 1))))
( circle-sphere-1-south-sphere-1-eq-base-πΒΉ))
apply-up-suspension-meridian-zero-suspension-circle-sphere-1-circle :
coherence-square-identifications
( circle-sphere-1-north-sphere-1-eq-base-πΒΉ)
( ap (circle-sphere-1) (north-sphere-1-loop))
( loop-πΒΉ)
( circle-sphere-1-north-sphere-1-eq-base-πΒΉ)
apply-up-suspension-meridian-zero-suspension-circle-sphere-1-circle =
( right-whisker-concat
( ap-concat
( circle-sphere-1)
( meridian-sphere 0 (zero-Fin 1))
( inv (meridian-suspension (one-Fin 1))))
( circle-sphere-1-north-sphere-1-eq-base-πΒΉ)) β
( assoc
( ap circle-sphere-1 (meridian-suspension (zero-Fin 1)))
( ap circle-sphere-1 (inv ( meridian-sphere 0 (one-Fin 1))))
( circle-sphere-1-north-sphere-1-eq-base-πΒΉ)) β
( left-whisker-concat
( ap circle-sphere-1 (meridian-suspension (zero-Fin 1)))
( apply-up-suspension-meridian-one-suspension-circle-sphere-1-circle)) β
( compute-meridian-cogap-suspension
( suspension-structure-sphere-0-πΒΉ)
( zero-Fin 1))
circle-sphere-1-circle-loop-πΒΉ :
coherence-square-identifications
( circle-sphere-1-circle-base-πΒΉ)
( ap circle-sphere-1 (ap sphere-1-circle loop-πΒΉ))
( loop-πΒΉ)
( circle-sphere-1-circle-base-πΒΉ)
circle-sphere-1-circle-loop-πΒΉ =
( inv
( assoc
( ap circle-sphere-1 (ap sphere-1-circle loop-πΒΉ))
( ap
( circle-sphere-1)
( sphere-1-circle-base-πΒΉ-eq-north-sphere-1))
( circle-sphere-1-north-sphere-1-eq-base-πΒΉ)) β
( right-whisker-concat
( inv
( ap-concat
( circle-sphere-1)
( ap sphere-1-circle loop-πΒΉ)
( sphere-1-circle-base-πΒΉ-eq-north-sphere-1)))
( circle-sphere-1-north-sphere-1-eq-base-πΒΉ)) β
( right-whisker-concat
( ap
( ap circle-sphere-1)
( loop-universal-property-πΒΉ
( north-sphere 1)
( north-sphere-1-loop)))
( circle-sphere-1-north-sphere-1-eq-base-πΒΉ)) β
( right-whisker-concat
( ap-concat
( circle-sphere-1)
( sphere-1-circle-base-πΒΉ-eq-north-sphere-1)
( north-sphere-1-loop))
( circle-sphere-1-north-sphere-1-eq-base-πΒΉ)) β
( assoc
( ap circle-sphere-1 sphere-1-circle-base-πΒΉ-eq-north-sphere-1)
( ap circle-sphere-1 north-sphere-1-loop)
( circle-sphere-1-north-sphere-1-eq-base-πΒΉ)) β
( left-whisker-concat
( ap circle-sphere-1 sphere-1-circle-base-πΒΉ-eq-north-sphere-1)
( apply-up-suspension-meridian-zero-suspension-circle-sphere-1-circle)) β
( inv
( assoc
( ap circle-sphere-1 sphere-1-circle-base-πΒΉ-eq-north-sphere-1)
( circle-sphere-1-north-sphere-1-eq-base-πΒΉ)
( loop-πΒΉ))))
circle-sphere-1-circle : retraction sphere-1-circle
pr1 circle-sphere-1-circle = circle-sphere-1
pr2 circle-sphere-1-circle =
function-apply-dependent-universal-property-πΒΉ
( Ξ» x β (circle-sphere-1 (sphere-1-circle x)) οΌ x)
( circle-sphere-1-circle-base-πΒΉ)
( map-compute-dependent-identification-eq-value-comp-id
( circle-sphere-1)
( sphere-1-circle)
( loop-πΒΉ)
( circle-sphere-1-circle-base-πΒΉ)
( circle-sphere-1-circle-base-πΒΉ)
( circle-sphere-1-circle-loop-πΒΉ))
```
#### The equivalence between the circle and the 1-sphere
```agda
is-equiv-sphere-1-circle : is-equiv sphere-1-circle
pr1 is-equiv-sphere-1-circle =
sphere-1-circle-sphere-1
pr2 is-equiv-sphere-1-circle =
circle-sphere-1-circle
equiv-sphere-1-circle : πΒΉ β sphere 1
pr1 equiv-sphere-1-circle = sphere-1-circle
pr2 equiv-sphere-1-circle = is-equiv-sphere-1-circle
```
## See also
### Table of files related to cyclic types, groups, and rings
{{#include tables/cyclic-types.md}}