Morphisms and isomorphisms of relation algebras #
structure Cslib.RelationAlgebraHom (α : Type u_1) (β : Type u_2) [RelationAlgebra α] [RelationAlgebra β] extends BoundedLatticeHom α β, α →⋆* β :
Type (max u_1 u_2)
The type of relation algebra homomorphisms from α to β, preserving both the Boolean algebra
and composition operations
- toFun : α → β
Instances For
structure Cslib.RelationAlgebraEquiv (α : Type u_1) (β : Type u_2) [RelationAlgebra α] [RelationAlgebra β] extends (fun (x1 x2 : α) => x1 ≤ x2) ≃r fun (x1 x2 : β) => x1 ≤ x2, α ≃⋆* β :
Type (max u_1 u_2)
The type of relation algebra equivalence from α to β, preserving both the Boolean algebra
and composition operations
- toFun : α → β
- invFun : β → α
- left_inv : Function.LeftInverse self.invFun self.toFun
- right_inv : Function.RightInverse self.invFun self.toFun
Instances For
@[instance_reducible]
instance Cslib.RelationAlgebraHom.instFunLike {α : Type u_1} {β : Type u_2} [RelationAlgebra α] [RelationAlgebra β] :
FunLike (RelationAlgebraHom α β) α β
Equations
- Cslib.RelationAlgebraHom.instFunLike = { coe := fun (f : Cslib.RelationAlgebraHom α β) => f.toFun, coe_injective := ⋯ }
instance Cslib.RelationAlgebraHom.instBoundedLatticeHomClass {α : Type u_1} {β : Type u_2} [RelationAlgebra α] [RelationAlgebra β] :
BoundedLatticeHomClass (RelationAlgebraHom α β) α β
instance Cslib.RelationAlgebraHom.instMonoidHomClass {α : Type u_1} {β : Type u_2} [RelationAlgebra α] [RelationAlgebra β] :
MonoidHomClass (RelationAlgebraHom α β) α β
instance Cslib.RelationAlgebraHom.instStarHomClass {α : Type u_1} {β : Type u_2} [RelationAlgebra α] [RelationAlgebra β] :
StarHomClass (RelationAlgebraHom α β) α β
theorem Cslib.RelationAlgebraHom.ext {α : Type u_1} {β : Type u_2} [RelationAlgebra α] [RelationAlgebra β] {f g : RelationAlgebraHom α β} (h : ∀ (a : α), f a = g a) :
theorem Cslib.RelationAlgebraHom.ext_iff {α : Type u_1} {β : Type u_2} [RelationAlgebra α] [RelationAlgebra β] {f g : RelationAlgebraHom α β} :
id as a RelationAlgebraHom
Equations
- Cslib.RelationAlgebraHom.id α = { toBoundedLatticeHom := BoundedLatticeHom.id α, map_one' := ⋯, map_mul' := ⋯, map_star' := ⋯ }
Instances For
def Cslib.RelationAlgebraHom.comp {α : Type u_1} {β : Type u_2} {γ : Type u_3} [RelationAlgebra α] [RelationAlgebra β] [RelationAlgebra γ] (f : RelationAlgebraHom β γ) (g : RelationAlgebraHom α β) :
Composition of RelationAlgebraHom
Equations
Instances For
@[simp]
@[simp]
theorem Cslib.RelationAlgebraHom.comp_apply {α : Type u_1} {β : Type u_2} {γ : Type u_3} [RelationAlgebra α] [RelationAlgebra β] [RelationAlgebra γ] (f : RelationAlgebraHom β γ) (g : RelationAlgebraHom α β) (a : α) :
@[instance_reducible]
instance Cslib.RelationAlgebraEquiv.instEquivLike {α : Type u_1} {β : Type u_2} [RelationAlgebra α] [RelationAlgebra β] :
EquivLike (RelationAlgebraEquiv α β) α β
Equations
- One or more equations did not get rendered due to their size.
instance Cslib.RelationAlgebraEquiv.instOrderIsoClass {α : Type u_1} {β : Type u_2} [RelationAlgebra α] [RelationAlgebra β] :
OrderIsoClass (RelationAlgebraEquiv α β) α β
instance Cslib.RelationAlgebraEquiv.instMulEquivClass {α : Type u_1} {β : Type u_2} [RelationAlgebra α] [RelationAlgebra β] :
MulEquivClass (RelationAlgebraEquiv α β) α β
instance Cslib.RelationAlgebraEquiv.instStarHomClass {α : Type u_1} {β : Type u_2} [RelationAlgebra α] [RelationAlgebra β] :
StarHomClass (RelationAlgebraEquiv α β) α β
theorem Cslib.RelationAlgebraEquiv.ext {α : Type u_1} {β : Type u_2} [RelationAlgebra α] [RelationAlgebra β] {f g : RelationAlgebraEquiv α β} (h : ∀ (a : α), f a = g a) :
theorem Cslib.RelationAlgebraEquiv.ext_iff {α : Type u_1} {β : Type u_2} [RelationAlgebra α] [RelationAlgebra β] {f g : RelationAlgebraEquiv α β} :
The reflexive RelationAlgebraEquiv
Equations
- Cslib.RelationAlgebraEquiv.refl α = { toOrderIso := OrderIso.refl α, map_mul' := ⋯, map_star' := ⋯ }
Instances For
def Cslib.RelationAlgebraEquiv.symm {α : Type u_1} {β : Type u_2} [RelationAlgebra α] [RelationAlgebra β] (f : RelationAlgebraEquiv α β) :
The symmetric RelationAlgebraEquiv
Instances For
def Cslib.RelationAlgebraEquiv.trans {α : Type u_1} {β : Type u_2} {γ : Type u_3} [RelationAlgebra α] [RelationAlgebra β] [RelationAlgebra γ] (f : RelationAlgebraEquiv α β) (g : RelationAlgebraEquiv β γ) :
The transitive RelationAlgebraEquiv
Instances For
def Cslib.RelationAlgebraEquiv.toHom {α : Type u_1} {β : Type u_2} [RelationAlgebra α] [RelationAlgebra β] (f : RelationAlgebraEquiv α β) :
The RelationAlgebraHom underlying an RelationAlgebraEquiv
Equations
- One or more equations did not get rendered due to their size.
Instances For
@[simp]
@[simp]
theorem Cslib.RelationAlgebraEquiv.trans_apply {α : Type u_1} {β : Type u_2} {γ : Type u_3} [RelationAlgebra α] [RelationAlgebra β] [RelationAlgebra γ] (f : RelationAlgebraEquiv α β) (g : RelationAlgebraEquiv β γ) (a : α) :
@[simp]
theorem Cslib.RelationAlgebraEquiv.toHom_apply {α : Type u_1} {β : Type u_2} [RelationAlgebra α] [RelationAlgebra β] (f : RelationAlgebraEquiv α β) (a : α) :
@[simp]
theorem Cslib.RelationAlgebraEquiv.symm_apply_apply {α : Type u_1} {β : Type u_2} [RelationAlgebra α] [RelationAlgebra β] (f : RelationAlgebraEquiv α β) (a : α) :
@[simp]
theorem Cslib.RelationAlgebraEquiv.apply_symm_apply {α : Type u_1} {β : Type u_2} [RelationAlgebra α] [RelationAlgebra β] (f : RelationAlgebraEquiv α β) (b : β) :