Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions src/commutative-algebra.lagda.md
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,7 @@ open import commutative-algebra.isomorphisms-commutative-rings public
open import commutative-algebra.joins-ideals-commutative-rings public
open import commutative-algebra.joins-radical-ideals-commutative-rings public
open import commutative-algebra.large-commutative-rings public
open import commutative-algebra.large-function-commutative-rings public
open import commutative-algebra.local-commutative-rings public
open import commutative-algebra.maximal-ideals-commutative-rings public
open import commutative-algebra.multiples-of-elements-commutative-rings public
Expand Down
42 changes: 42 additions & 0 deletions src/commutative-algebra/large-function-commutative-rings.lagda.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
# Large function commutative rings

```agda
module commutative-algebra.large-function-commutative-rings where
```

<details><summary>Imports</summary>

```agda
open import commutative-algebra.large-commutative-rings

open import foundation.function-extensionality
open import foundation.universe-levels

open import ring-theory.large-function-rings
```

</details>

## Idea

Given a [large commutative ring](commutative-algebra.large-commutative-rings.md)
`R` and an arbitrary type `A`, `A → R` forms a large commutative ring.

## Definition

```agda
module _
{l1 : Level}
{α : Level → Level}
{β : Level → Level → Level}
(A : UU l1)
(R : Large-Commutative-Ring α β)
where

function-Large-Commutative-Ring :
Large-Commutative-Ring (λ l → l1 ⊔ α l) (λ l2 l3 → l1 ⊔ β l2 l3)
large-ring-Large-Commutative-Ring function-Large-Commutative-Ring =
function-Large-Ring A (large-ring-Large-Commutative-Ring R)
commutative-mul-Large-Commutative-Ring function-Large-Commutative-Ring f g =
eq-htpy (λ a → commutative-mul-Large-Commutative-Ring R (f a) (g a))
```
2 changes: 2 additions & 0 deletions src/foundation.lagda.md
Original file line number Diff line number Diff line change
Expand Up @@ -213,6 +213,8 @@ open import foundation.fixed-points-endofunctions public
open import foundation.freely-generated-equivalence-relations public
open import foundation.full-subtypes public
open import foundation.function-extensionality public
open import foundation.function-large-equivalence-relations public
open import foundation.function-large-similarity-relations public
open import foundation.function-types public
open import foundation.function-types-with-apartness-relations public
open import foundation.functional-correspondences public
Expand Down
55 changes: 55 additions & 0 deletions src/foundation/function-large-equivalence-relations.lagda.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
# Function large equivalence relations

```agda
module foundation.function-large-equivalence-relations where
```

<details><summary>Imports</summary>

```agda
open import foundation.large-equivalence-relations
open import foundation.propositions
open import foundation.universe-levels
```

</details>

## Idea

Given a [large equivalence relation](foundation.large-equivalence-relations.md)
on `X` and a type `A`, there is an induced large equivalence relation on
`A → X`.

## Definition

```agda
module _
{l1 : Level}
{α : Level → Level}
{β : Level → Level → Level}
{X : (l : Level) → UU (α l)}
(A : UU l1)
(R : Large-Equivalence-Relation β X)
where

function-Large-Equivalence-Relation :
Large-Equivalence-Relation
( λ l2 l3 → l1 ⊔ β l2 l3)
( λ l → A → X l)
sim-prop-Large-Equivalence-Relation function-Large-Equivalence-Relation f g =
Π-Prop A (λ a → sim-prop-Large-Equivalence-Relation R (f a) (g a))
refl-sim-Large-Equivalence-Relation function-Large-Equivalence-Relation f a =
refl-sim-Large-Equivalence-Relation R (f a)
symmetric-sim-Large-Equivalence-Relation function-Large-Equivalence-Relation
f g f~g a =
symmetric-sim-Large-Equivalence-Relation R (f a) (g a) (f~g a)
transitive-sim-Large-Equivalence-Relation function-Large-Equivalence-Relation
f g h g~h f~g a =
transitive-sim-Large-Equivalence-Relation
( R)
( f a)
( g a)
( h a)
( g~h a)
( f~g a)
```
46 changes: 46 additions & 0 deletions src/foundation/function-large-similarity-relations.lagda.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
# Function large similarity relations

```agda
module foundation.function-large-similarity-relations where
```

<details><summary>Imports</summary>

```agda
open import foundation.function-extensionality
open import foundation.function-large-equivalence-relations
open import foundation.large-similarity-relations
open import foundation.universe-levels
```

</details>

## Idea

Given a [large similarity relation](foundation.large-similarity-relations.md) on
`X` and any type `A`, there is an induced large similarity relation on `A → X`.

## Definition

```agda
module _
{l1 : Level}
{α : Level → Level}
{β : Level → Level → Level}
{X : (l : Level) → UU (α l)}
(A : UU l1)
(R : Large-Similarity-Relation β X)
where

function-Large-Similarity-Relation :
Large-Similarity-Relation
( λ l2 l3 → l1 ⊔ β l2 l3)
( λ l → A → X l)
large-equivalence-relation-Large-Similarity-Relation
function-Large-Similarity-Relation =
function-Large-Equivalence-Relation
( A)
( large-equivalence-relation-Large-Similarity-Relation R)
eq-sim-Large-Similarity-Relation function-Large-Similarity-Relation f g f~g =
eq-htpy (λ a → eq-sim-Large-Similarity-Relation R (f a) (g a) (f~g a))
```
5 changes: 5 additions & 0 deletions src/group-theory.lagda.md
Original file line number Diff line number Diff line change
Expand Up @@ -121,6 +121,11 @@ open import group-theory.kernels-homomorphisms-concrete-groups public
open import group-theory.kernels-homomorphisms-groups public
open import group-theory.large-abelian-groups public
open import group-theory.large-commutative-monoids public
open import group-theory.large-function-abelian-groups public
open import group-theory.large-function-commutative-monoids public
open import group-theory.large-function-groups public
open import group-theory.large-function-monoids public
open import group-theory.large-function-semigroups public
open import group-theory.large-groups public
open import group-theory.large-monoids public
open import group-theory.large-semigroups public
Expand Down
40 changes: 40 additions & 0 deletions src/group-theory/large-function-abelian-groups.lagda.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
# Large function abelian groups

```agda
module group-theory.large-function-abelian-groups where
```

<details><summary>Imports</summary>

```agda
open import foundation.function-extensionality
open import foundation.universe-levels

open import group-theory.large-abelian-groups
open import group-theory.large-function-groups
```

</details>

## Idea

Given a [large abelian group](group-theory.large-abelian-groups.md) `G` and an
arbitrary type `A`, `A → G` forms a large abelian group.

## Definition

```agda
module _
{l1 : Level}
{α : Level → Level}
{β : Level → Level → Level}
(A : UU l1)
(G : Large-Ab α β)
where

function-Large-Ab : Large-Ab (λ l → l1 ⊔ α l) (λ l2 l3 → l1 ⊔ β l2 l3)
large-group-Large-Ab function-Large-Ab =
function-Large-Group A (large-group-Large-Ab G)
commutative-add-Large-Ab function-Large-Ab f g =
eq-htpy (λ a → commutative-add-Large-Ab G (f a) (g a))
```
42 changes: 42 additions & 0 deletions src/group-theory/large-function-commutative-monoids.lagda.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
# Large function commutative monoids

```agda
module group-theory.large-function-commutative-monoids where
```

<details><summary>Imports</summary>

```agda
open import foundation.function-extensionality
open import foundation.universe-levels

open import group-theory.large-commutative-monoids
open import group-theory.large-function-monoids
```

</details>

## Idea

Given a [large commutative monoid](group-theory.large-commutative-monoids.md)
`M` and an arbitrary type `A`, `A → M` forms a large commutative monoid.

## Definition

```agda
module _
{l1 : Level}
{α : Level → Level}
{β : Level → Level → Level}
(A : UU l1)
(M : Large-Commutative-Monoid α β)
where

function-Large-Commutative-Monoid :
Large-Commutative-Monoid (λ l → l1 ⊔ α l) (λ l2 l3 → l1 ⊔ β l2 l3)
large-monoid-Large-Commutative-Monoid function-Large-Commutative-Monoid =
function-Large-Monoid A (large-monoid-Large-Commutative-Monoid M)
commutative-mul-Large-Commutative-Monoid function-Large-Commutative-Monoid
f g =
eq-htpy ( λ a → commutative-mul-Large-Commutative-Monoid M (f a) (g a))
```
45 changes: 45 additions & 0 deletions src/group-theory/large-function-groups.lagda.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
# Large function groups

```agda
module group-theory.large-function-groups where
```

<details><summary>Imports</summary>

```agda
open import foundation.function-extensionality
open import foundation.universe-levels

open import group-theory.large-function-monoids
open import group-theory.large-groups
```

</details>

## Idea

Given a [large group](group-theory.large-groups.md) `G` and an arbitrary type
`A`, `A → G` forms a large group.

## Definition

```agda
module _
{l1 : Level}
{α : Level → Level}
{β : Level → Level → Level}
(A : UU l1)
(G : Large-Group α β)
where

function-Large-Group : Large-Group (λ l → l1 ⊔ α l) (λ l2 l3 → l1 ⊔ β l2 l3)
large-monoid-Large-Group function-Large-Group =
function-Large-Monoid A (large-monoid-Large-Group G)
inv-Large-Group function-Large-Group f a = inv-Large-Group G (f a)
preserves-sim-inv-Large-Group function-Large-Group f g f~g a =
preserves-sim-inv-Large-Group G (f a) (g a) (f~g a)
left-inverse-law-mul-Large-Group function-Large-Group f =
eq-htpy (λ a → left-inverse-law-mul-Large-Group G (f a))
right-inverse-law-mul-Large-Group function-Large-Group f =
eq-htpy (λ a → right-inverse-law-mul-Large-Group G (f a))
```
54 changes: 54 additions & 0 deletions src/group-theory/large-function-monoids.lagda.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
# Large function monoids

```agda
module group-theory.large-function-monoids where
```

<details><summary>Imports</summary>

```agda
open import foundation.function-extensionality
open import foundation.function-large-similarity-relations
open import foundation.universe-levels

open import group-theory.large-function-semigroups
open import group-theory.large-monoids
```

</details>

## Idea

Given a [large monoid](group-theory.large-monoids.md) `M` and an arbitrary type
`A`, `A → M` forms a large monoid.

## Definition

```agda
module _
{l1 : Level}
{α : Level → Level}
{β : Level → Level → Level}
(A : UU l1)
(M : Large-Monoid α β)
where

function-Large-Monoid :
Large-Monoid (λ l → l1 ⊔ α l) (λ l2 l3 → l1 ⊔ β l2 l3)
large-semigroup-Large-Monoid function-Large-Monoid =
function-Large-Semigroup A (large-semigroup-Large-Monoid M)
large-similarity-relation-Large-Monoid function-Large-Monoid =
function-Large-Similarity-Relation
( A)
( large-similarity-relation-Large-Monoid M)
raise-Large-Monoid function-Large-Monoid l f a = raise-Large-Monoid M l (f a)
sim-raise-Large-Monoid function-Large-Monoid l2 f a =
sim-raise-Large-Monoid M l2 (f a)
preserves-sim-mul-Large-Monoid function-Large-Monoid f f' f~f' g g' g~g' a =
preserves-sim-mul-Large-Monoid M (f a) (f' a) (f~f' a) (g a) (g' a) (g~g' a)
unit-Large-Monoid function-Large-Monoid a = unit-Large-Monoid M
left-unit-law-mul-Large-Monoid function-Large-Monoid f =
eq-htpy (λ a → left-unit-law-mul-Large-Monoid M (f a))
right-unit-law-mul-Large-Monoid function-Large-Monoid f =
eq-htpy (λ a → right-unit-law-mul-Large-Monoid M (f a))
```
36 changes: 36 additions & 0 deletions src/group-theory/large-function-semigroups.lagda.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
# Large function semigroups

```agda
module group-theory.large-function-semigroups where
```

<details><summary>Imports</summary>

```agda
open import foundation.function-extensionality
open import foundation.sets
open import foundation.universe-levels

open import group-theory.large-semigroups
```

</details>

## Idea

Given a [large semigroup](group-theory.large-semigroups.md) `G` and an arbitrary
type `A`, `A → G` forms a large semigroup.

## Definition

```agda
function-Large-Semigroup :
{l : Level} {α : Level → Level} → UU l → Large-Semigroup α →
Large-Semigroup (λ l' → l ⊔ α l')
function-Large-Semigroup A G =
make-Large-Semigroup
( λ l → function-Set A (set-Large-Semigroup G l))
( λ f g a → mul-Large-Semigroup G (f a) (g a))
( λ f g h →
eq-htpy (λ a → associative-mul-Large-Semigroup G (f a) (g a) (h a)))
```
Loading