Sets as a semiring under union #
This file defines SetSemiring α, an alias of Set α, which we endow with ∪ as addition and
pointwise * as multiplication. If α is a (commutative) monoid, SetSemiring α is an
idempotent (commutative) semiring.
An alias for Set α, which has a semiring structure given by ∪ as "addition" and pointwise
multiplication * as "multiplication".
Equations
- SetSemiring α = Set α
Instances For
Equations
- instInhabitedSetSemiring α = { default := instInhabitedSetSemiring._aux_1 α }
Equations
- One or more equations did not get rendered due to their size.
Equations
- SetSemiring.instZero = { zero := SetSemiring.ofSet ∅ }
Equations
- SetSemiring.instAdd = { add := fun (s t : SetSemiring α) => SetSemiring.ofSet (SetSemiring.toSet s ∪ SetSemiring.toSet t) }
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
Equations
- SetSemiring.instOne = { one := SetSemiring.ofSet 1 }
Equations
- SetSemiring.instMulOneClass = { toOne := SetSemiring.instOne, toMul := SetSemiring.instNonUnitalNonAssocSemiring.toDistrib.toMul, one_mul := ⋯, mul_one := ⋯ }
Equations
- One or more equations did not get rendered due to their size.
Equations
- SetSemiring.instSemigroup = { toMul := SetSemiring.instNonUnitalNonAssocSemiring.toDistrib.toMul, mul_assoc := ⋯ }
Equations
- SetSemiring.instNonUnitalSemiringOfSemigroup = { toNonUnitalNonAssocSemiring := SetSemiring.instNonUnitalNonAssocSemiring, mul_assoc := ⋯ }
Equations
- One or more equations did not get rendered due to their size.
Equations
- SetSemiring.instCommSemigroup = { toSemigroup := SetSemiring.instSemigroup, mul_comm := ⋯ }
Equations
- SetSemiring.instNonUnitalCommSemiringOfCommSemigroup = { toNonUnitalSemiring := SetSemiring.instNonUnitalSemiringOfSemigroup, mul_comm := ⋯ }
Equations
- SetSemiring.instCommMonoid = { toMonoid := SetSemiring.instIdemSemiringOfMonoid.toMonoid, mul_comm := ⋯ }
Equations
- One or more equations did not get rendered due to their size.
If α is a monoid, the map that sends a : α to {a} is a monoid homomorphism.
Equations
- SetSemiring.singletonMonoidHom = { toFun := fun (a : α) => SetSemiring.ofSet {a}, map_one' := ⋯, map_mul' := ⋯ }
Instances For
The image of a set under a multiplicative homomorphism is a ring homomorphism with respect to the pointwise operations on sets.
Equations
- SetSemiring.imageHom f = { toFun := fun (s : SetSemiring α) => SetSemiring.ofSet (⇑f '' SetSemiring.toSet s), map_one' := ⋯, map_mul' := ⋯, map_zero' := ⋯, map_add' := ⋯ }
Instances For
Alias of SetSemiring.ofSet.
The identity equivalence between Set α and SetSemiring α.
Equations
Instances For
Alias of SetSemiring.toSet.
The identity equivalence between SetSemiring α and Set α.
Equations
Instances For
Alias of SetSemiring.toSet_ofSet.
Alias of SetSemiring.ofSet_toSet.
Alias of SetSemiring.ofSet_le_ofSet.
Alias of SetSemiring.ofSet_lt_ofSet.
Alias of SetSemiring.toSet_subset_toSet.
Alias of SetSemiring.toSet_ssubset_toSet.
Alias of SetSemiring.toSet_zero.
Alias of SetSemiring.ofSet_empty.
Alias of SetSemiring.toSet_add.
Alias of SetSemiring.ofSet_union.
Alias of SetSemiring.toSet_mul.
Alias of SetSemiring.ofSet_mul.
Alias of SetSemiring.toSet_one.
Alias of SetSemiring.ofSet_one.
Alias of SetSemiring.imageHom_apply.
Alias of SetSemiring.imageHom_apply.
Alias of SetSemiring.imageHom_apply.