Sets in product and pi types #
This file proves basic properties of product of sets in α × β
and in Π i, α i
, and of the
diagonal of a type.
Main declarations #
This file contains basic results on the following notions, which are defined in Set.Operations
.
Set.prod
: Binary product of sets. Fors : Set α
,t : Set β
, we haves.prod t : Set (α × β)
. Denoted bys ×ˢ t
.Set.diagonal
: Diagonal of a type.Set.diagonal α = {(x, x) | x : α}
.Set.offDiag
: Off-diagonal.s ×ˢ s
without the diagonal.Set.pi
: Arbitrary product of sets.
Cartesian binary product of sets #
Equations
- Set.decidableMemProd x = inferInstanceAs (Decidable (x.1 ∈ s ∧ x.2 ∈ t))
Diagonal #
In this section we prove some lemmas about the diagonal set {p | p.1 = p.2}
and the diagonal map
fun x ↦ (x, x)
.
Equations
- Set.decidableMemDiagonal x = h x.1 x.2
A function is Function.const α a
for some a
if and only if ∀ x y, f x = f y
.
The fiber product
Equations
- Function.Pullback f g = { p : X × Z // f p.1 = g p.2 }
The fiber product
Equations
The projection from the fiber product to the first factor.
Equations
- p.fst = (↑p).1
The projection from the fiber product to the second factor.
Equations
- p.snd = (↑p).2
The diagonal map
Equations
- toPullbackDiag f x = ⟨(x, x), ⋯⟩
The diagonal
Equations
- Function.pullbackDiagonal f = {p : Function.Pullback f f | p.fst = p.snd}
Three functions between the three pairs of spaces
Equations
- Function.mapPullback mapX mapY mapZ commX commZ p = ⟨(mapX p.fst, mapZ p.snd), ⋯⟩
The projection
Equations
- Function.PullbackSelf.map_fst = Function.mapPullback Function.Pullback.fst g Function.Pullback.fst ⋯ ⋯
The projection
Equations
- Function.PullbackSelf.map_snd = Function.mapPullback Function.Pullback.snd f Function.Pullback.snd ⋯ ⋯
Alias of the reverse direction of Set.offDiag_nonempty
.
Alias of the reverse direction of Set.offDiag_nonempty
.