Documentation

Mathlib.Algebra.Order.Group.Synonym

Group structure on the order type synonyms #

Transfer algebraic instances from α to αᵒᵈ, Lex α, and Colex α.

OrderDual #

instance instOneOrderDual {α : Type u_1} [h : One α] :
Equations
    instance instZeroOrderDual {α : Type u_1} [h : Zero α] :
    Equations
      instance instMulOrderDual {α : Type u_1} [h : Mul α] :
      Equations
        instance instAddOrderDual {α : Type u_1} [h : Add α] :
        Equations
          instance instInvOrderDual {α : Type u_1} [h : Inv α] :
          Equations
            instance instNegOrderDual {α : Type u_1} [h : Neg α] :
            Equations
              instance instDivOrderDual {α : Type u_1} [h : Div α] :
              Equations
                instance instSubOrderDual {α : Type u_1} [h : Sub α] :
                Equations
                  instance OrderDual.instPow {α : Type u_1} {β : Type u_2} [h : Pow α β] :
                  Pow αᵒᵈ β
                  Equations
                    instance OrderDual.instVAdd {β : Type u_2} {α : Type u_1} [h : VAdd β α] :
                    Equations
                      instance OrderDual.instSMul {β : Type u_2} {α : Type u_1} [h : SMul β α] :
                      Equations
                        instance OrderDual.instPow' {α : Type u_1} {β : Type u_2} [h : Pow α β] :
                        Pow α βᵒᵈ
                        Equations
                          instance OrderDual.instVAdd' {β : Type u_2} {α : Type u_1} [h : VAdd β α] :
                          Equations
                            instance OrderDual.instSMul' {β : Type u_2} {α : Type u_1} [h : SMul β α] :
                            Equations
                              instance instSemigroupOrderDual {α : Type u_1} [h : Semigroup α] :
                              Equations
                                instance instMonoidOrderDual {α : Type u_1} [h : Monoid α] :
                                Equations
                                  instance instAddMonoidOrderDual {α : Type u_1} [h : AddMonoid α] :
                                  Equations
                                    instance OrderDual.instGroup {α : Type u_1} [h : Group α] :
                                    Equations
                                      instance OrderDual.instAddGroup {α : Type u_1} [h : AddGroup α] :
                                      Equations
                                        instance instCommGroupOrderDual {α : Type u_1} [h : CommGroup α] :
                                        Equations
                                          @[simp]
                                          theorem toDual_one {α : Type u_1} [One α] :
                                          @[simp]
                                          theorem toDual_zero {α : Type u_1} [Zero α] :
                                          @[simp]
                                          theorem ofDual_one {α : Type u_1} [One α] :
                                          @[simp]
                                          theorem ofDual_zero {α : Type u_1} [Zero α] :
                                          @[simp]
                                          theorem toDual_eq_one {α : Type u_1} [One α] {a : α} :
                                          @[simp]
                                          theorem toDual_eq_zero {α : Type u_1} [Zero α] {a : α} :
                                          @[simp]
                                          theorem ofDual_eq_one {α : Type u_1} [One α] {a : αᵒᵈ} :
                                          @[simp]
                                          theorem ofDual_eq_zero {α : Type u_1} [Zero α] {a : αᵒᵈ} :
                                          @[simp]
                                          theorem toDual_mul {α : Type u_1} [Mul α] (a b : α) :
                                          @[simp]
                                          theorem toDual_add {α : Type u_1} [Add α] (a b : α) :
                                          @[simp]
                                          theorem ofDual_mul {α : Type u_1} [Mul α] (a b : αᵒᵈ) :
                                          @[simp]
                                          theorem ofDual_add {α : Type u_1} [Add α] (a b : αᵒᵈ) :
                                          @[simp]
                                          theorem toDual_inv {α : Type u_1} [Inv α] (a : α) :
                                          @[simp]
                                          theorem toDual_neg {α : Type u_1} [Neg α] (a : α) :
                                          @[simp]
                                          theorem ofDual_neg {α : Type u_1} [Neg α] (a : αᵒᵈ) :
                                          @[simp]
                                          theorem toDual_div {α : Type u_1} [Div α] (a b : α) :
                                          @[simp]
                                          theorem toDual_sub {α : Type u_1} [Sub α] (a b : α) :
                                          @[simp]
                                          theorem ofDual_div {α : Type u_1} [Div α] (a b : αᵒᵈ) :
                                          @[simp]
                                          theorem ofDual_sub {α : Type u_1} [Sub α] (a b : αᵒᵈ) :
                                          @[simp]
                                          theorem toDual_pow {α : Type u_1} {β : Type u_2} [Pow α β] (a : α) (b : β) :
                                          @[simp]
                                          theorem toDual_vadd {β : Type u_2} {α : Type u_1} [VAdd β α] (b : β) (a : α) :
                                          @[simp]
                                          theorem toDual_smul {β : Type u_2} {α : Type u_1} [SMul β α] (b : β) (a : α) :
                                          @[simp]
                                          theorem ofDual_pow {α : Type u_1} {β : Type u_2} [Pow α β] (a : αᵒᵈ) (b : β) :
                                          @[simp]
                                          theorem ofDual_smul {β : Type u_2} {α : Type u_1} [SMul β α] (b : β) (a : αᵒᵈ) :
                                          @[simp]
                                          theorem ofDual_vadd {β : Type u_2} {α : Type u_1} [VAdd β α] (b : β) (a : αᵒᵈ) :
                                          @[simp]
                                          theorem pow_toDual {α : Type u_1} {β : Type u_2} [Pow α β] (a : α) (b : β) :
                                          @[simp]
                                          theorem toDual_smul' {β : Type u_2} {α : Type u_1} [SMul β α] (b : β) (a : α) :
                                          @[simp]
                                          theorem toDual_vadd' {β : Type u_2} {α : Type u_1} [VAdd β α] (b : β) (a : α) :
                                          @[simp]
                                          theorem pow_ofDual {α : Type u_1} {β : Type u_2} [Pow α β] (a : α) (b : βᵒᵈ) :
                                          @[simp]
                                          theorem ofDual_vadd' {β : Type u_2} {α : Type u_1} [VAdd β α] (b : βᵒᵈ) (a : α) :
                                          @[simp]
                                          theorem ofDual_smul' {β : Type u_2} {α : Type u_1} [SMul β α] (b : βᵒᵈ) (a : α) :
                                          @[simp]
                                          theorem isRegular_toDual {α : Type u_1} [Monoid α] {a : α} :

                                          Lexicographical order #

                                          instance instOneLex {α : Type u_1} [h : One α] :
                                          One (Lex α)
                                          Equations
                                            instance instZeroLex {α : Type u_1} [h : Zero α] :
                                            Zero (Lex α)
                                            Equations
                                              instance instMulLex {α : Type u_1} [h : Mul α] :
                                              Mul (Lex α)
                                              Equations
                                                instance instAddLex {α : Type u_1} [h : Add α] :
                                                Add (Lex α)
                                                Equations
                                                  instance instInvLex {α : Type u_1} [h : Inv α] :
                                                  Inv (Lex α)
                                                  Equations
                                                    instance instNegLex {α : Type u_1} [h : Neg α] :
                                                    Neg (Lex α)
                                                    Equations
                                                      instance instDivLex {α : Type u_1} [h : Div α] :
                                                      Div (Lex α)
                                                      Equations
                                                        instance instSubLex {α : Type u_1} [h : Sub α] :
                                                        Sub (Lex α)
                                                        Equations
                                                          instance Lex.instPow {α : Type u_1} {β : Type u_2} [h : Pow α β] :
                                                          Pow (Lex α) β
                                                          Equations
                                                            instance Lex.instSMul {β : Type u_2} {α : Type u_1} [h : SMul β α] :
                                                            SMul β (Lex α)
                                                            Equations
                                                              instance Lex.instVAdd {β : Type u_2} {α : Type u_1} [h : VAdd β α] :
                                                              VAdd β (Lex α)
                                                              Equations
                                                                instance Lex.instPow' {α : Type u_1} {β : Type u_2} [h : Pow α β] :
                                                                Pow α (Lex β)
                                                                Equations
                                                                  instance Lex.instVAdd' {β : Type u_2} {α : Type u_1} [h : VAdd β α] :
                                                                  VAdd (Lex β) α
                                                                  Equations
                                                                    instance Lex.instSMul' {β : Type u_2} {α : Type u_1} [h : SMul β α] :
                                                                    SMul (Lex β) α
                                                                    Equations
                                                                      instance instSemigroupLex {α : Type u_1} [h : Semigroup α] :
                                                                      Equations
                                                                        instance instAddSemigroupLex {α : Type u_1} [h : AddSemigroup α] :
                                                                        Equations
                                                                          instance instCommSemigroupLex {α : Type u_1} [h : CommSemigroup α] :
                                                                          Equations
                                                                            instance instMulOneClassLex {α : Type u_1} [h : MulOneClass α] :
                                                                            Equations
                                                                              instance instAddZeroClassLex {α : Type u_1} [h : AddZeroClass α] :
                                                                              Equations
                                                                                instance instMonoidLex {α : Type u_1} [h : Monoid α] :
                                                                                Monoid (Lex α)
                                                                                Equations
                                                                                  instance instAddMonoidLex {α : Type u_1} [h : AddMonoid α] :
                                                                                  Equations
                                                                                    instance instCommMonoidLex {α : Type u_1} [h : CommMonoid α] :
                                                                                    Equations
                                                                                      instance instAddCommMonoidLex {α : Type u_1} [h : AddCommMonoid α] :
                                                                                      Equations
                                                                                        instance instCancelMonoidLex {α : Type u_1} [h : CancelMonoid α] :
                                                                                        Equations
                                                                                          instance instInvolutiveInvLex {α : Type u_1} [h : InvolutiveInv α] :
                                                                                          Equations
                                                                                            instance instInvolutiveNegLex {α : Type u_1} [h : InvolutiveNeg α] :
                                                                                            Equations
                                                                                              instance instDivInvMonoidLex {α : Type u_1} [h : DivInvMonoid α] :
                                                                                              Equations
                                                                                                instance instSubNegAddMonoidLex {α : Type u_1} [h : SubNegMonoid α] :
                                                                                                Equations
                                                                                                  instance instDivisionMonoidLex {α : Type u_1} [h : DivisionMonoid α] :
                                                                                                  Equations
                                                                                                    instance instGroupLex {α : Type u_1} [h : Group α] :
                                                                                                    Group (Lex α)
                                                                                                    Equations
                                                                                                      instance instAddGroupLex {α : Type u_1} [h : AddGroup α] :
                                                                                                      Equations
                                                                                                        instance instCommGroupLex {α : Type u_1} [h : CommGroup α] :
                                                                                                        Equations
                                                                                                          instance instAddCommGroupLex {α : Type u_1} [h : AddCommGroup α] :
                                                                                                          Equations
                                                                                                            @[simp]
                                                                                                            theorem toLex_one {α : Type u_1} [One α] :
                                                                                                            toLex 1 = 1
                                                                                                            @[simp]
                                                                                                            theorem toLex_zero {α : Type u_1} [Zero α] :
                                                                                                            toLex 0 = 0
                                                                                                            @[simp]
                                                                                                            theorem toLex_eq_one {α : Type u_1} [One α] {a : α} :
                                                                                                            toLex a = 1 a = 1
                                                                                                            @[simp]
                                                                                                            theorem toLex_eq_zero {α : Type u_1} [Zero α] {a : α} :
                                                                                                            toLex a = 0 a = 0
                                                                                                            @[simp]
                                                                                                            theorem ofLex_one {α : Type u_1} [One α] :
                                                                                                            ofLex 1 = 1
                                                                                                            @[simp]
                                                                                                            theorem ofLex_zero {α : Type u_1} [Zero α] :
                                                                                                            ofLex 0 = 0
                                                                                                            @[simp]
                                                                                                            theorem ofLex_eq_one {α : Type u_1} [One α] {a : Lex α} :
                                                                                                            ofLex a = 1 a = 1
                                                                                                            @[simp]
                                                                                                            theorem ofLex_eq_zero {α : Type u_1} [Zero α] {a : Lex α} :
                                                                                                            ofLex a = 0 a = 0
                                                                                                            @[simp]
                                                                                                            theorem toLex_mul {α : Type u_1} [Mul α] (a b : α) :
                                                                                                            toLex (a * b) = toLex a * toLex b
                                                                                                            @[simp]
                                                                                                            theorem toLex_add {α : Type u_1} [Add α] (a b : α) :
                                                                                                            toLex (a + b) = toLex a + toLex b
                                                                                                            @[simp]
                                                                                                            theorem ofLex_mul {α : Type u_1} [Mul α] (a b : Lex α) :
                                                                                                            ofLex (a * b) = ofLex a * ofLex b
                                                                                                            @[simp]
                                                                                                            theorem ofLex_add {α : Type u_1} [Add α] (a b : Lex α) :
                                                                                                            ofLex (a + b) = ofLex a + ofLex b
                                                                                                            @[simp]
                                                                                                            theorem toLex_inv {α : Type u_1} [Inv α] (a : α) :
                                                                                                            @[simp]
                                                                                                            theorem toLex_neg {α : Type u_1} [Neg α] (a : α) :
                                                                                                            @[simp]
                                                                                                            theorem ofLex_inv {α : Type u_1} [Inv α] (a : Lex α) :
                                                                                                            @[simp]
                                                                                                            theorem ofLex_neg {α : Type u_1} [Neg α] (a : Lex α) :
                                                                                                            @[simp]
                                                                                                            theorem toLex_div {α : Type u_1} [Div α] (a b : α) :
                                                                                                            toLex (a / b) = toLex a / toLex b
                                                                                                            @[simp]
                                                                                                            theorem toLex_sub {α : Type u_1} [Sub α] (a b : α) :
                                                                                                            toLex (a - b) = toLex a - toLex b
                                                                                                            @[simp]
                                                                                                            theorem ofLex_div {α : Type u_1} [Div α] (a b : Lex α) :
                                                                                                            ofLex (a / b) = ofLex a / ofLex b
                                                                                                            @[simp]
                                                                                                            theorem ofLex_sub {α : Type u_1} [Sub α] (a b : Lex α) :
                                                                                                            ofLex (a - b) = ofLex a - ofLex b
                                                                                                            @[simp]
                                                                                                            theorem toLex_pow {α : Type u_1} {β : Type u_2} [Pow α β] (a : α) (b : β) :
                                                                                                            toLex (a ^ b) = toLex a ^ b
                                                                                                            @[simp]
                                                                                                            theorem toLex_vadd {β : Type u_2} {α : Type u_1} [VAdd β α] (b : β) (a : α) :
                                                                                                            toLex (b +ᵥ a) = b +ᵥ toLex a
                                                                                                            @[simp]
                                                                                                            theorem toLex_smul {β : Type u_2} {α : Type u_1} [SMul β α] (b : β) (a : α) :
                                                                                                            toLex (b a) = b toLex a
                                                                                                            @[simp]
                                                                                                            theorem ofLex_pow {α : Type u_1} {β : Type u_2} [Pow α β] (a : Lex α) (b : β) :
                                                                                                            ofLex (a ^ b) = ofLex a ^ b
                                                                                                            @[simp]
                                                                                                            theorem ofLex_smul {β : Type u_2} {α : Type u_1} [SMul β α] (b : β) (a : Lex α) :
                                                                                                            ofLex (b a) = b ofLex a
                                                                                                            @[simp]
                                                                                                            theorem ofLex_vadd {β : Type u_2} {α : Type u_1} [VAdd β α] (b : β) (a : Lex α) :
                                                                                                            ofLex (b +ᵥ a) = b +ᵥ ofLex a
                                                                                                            @[simp]
                                                                                                            theorem pow_toLex {α : Type u_1} {β : Type u_2} [Pow α β] (a : α) (b : β) :
                                                                                                            a ^ toLex b = a ^ b
                                                                                                            @[simp]
                                                                                                            theorem toLex_vadd' {β : Type u_2} {α : Type u_1} [VAdd β α] (b : β) (a : α) :
                                                                                                            toLex b +ᵥ a = b +ᵥ a
                                                                                                            @[simp]
                                                                                                            theorem toLex_smul' {β : Type u_2} {α : Type u_1} [SMul β α] (b : β) (a : α) :
                                                                                                            toLex b a = b a
                                                                                                            @[simp]
                                                                                                            theorem pow_ofLex {α : Type u_1} {β : Type u_2} [Pow α β] (a : α) (b : Lex β) :
                                                                                                            a ^ ofLex b = a ^ b
                                                                                                            @[simp]
                                                                                                            theorem ofLex_smul' {β : Type u_2} {α : Type u_1} [SMul β α] (b : Lex β) (a : α) :
                                                                                                            ofLex b a = b a
                                                                                                            @[simp]
                                                                                                            theorem ofLex_vadd' {β : Type u_2} {α : Type u_1} [VAdd β α] (b : Lex β) (a : α) :
                                                                                                            ofLex b +ᵥ a = b +ᵥ a
                                                                                                            @[simp]
                                                                                                            theorem isLeftRegular_toLex {α : Type u_1} [Monoid α] {a : α} :
                                                                                                            @[simp]
                                                                                                            theorem isLeftRegular_ofLex {α : Type u_1} [Monoid α] {a : Lex α} :
                                                                                                            @[simp]
                                                                                                            theorem isRegular_toLex {α : Type u_1} [Monoid α] {a : α} :
                                                                                                            @[simp]
                                                                                                            theorem isAddRegular_toLex {α : Type u_1} [AddMonoid α] {a : α} :
                                                                                                            @[simp]
                                                                                                            theorem isRegular_ofLex {α : Type u_1} [Monoid α] {a : Lex α} :
                                                                                                            @[simp]
                                                                                                            theorem isAddRegular_ofLex {α : Type u_1} [AddMonoid α] {a : Lex α} :

                                                                                                            Colexicographical order #

                                                                                                            instance instOneColex {α : Type u_1} [h : One α] :
                                                                                                            One (Colex α)
                                                                                                            Equations
                                                                                                              instance instZeroColex {α : Type u_1} [h : Zero α] :
                                                                                                              Zero (Colex α)
                                                                                                              Equations
                                                                                                                instance instMulColex {α : Type u_1} [h : Mul α] :
                                                                                                                Mul (Colex α)
                                                                                                                Equations
                                                                                                                  instance instAddColex {α : Type u_1} [h : Add α] :
                                                                                                                  Add (Colex α)
                                                                                                                  Equations
                                                                                                                    instance instInvColex {α : Type u_1} [h : Inv α] :
                                                                                                                    Inv (Colex α)
                                                                                                                    Equations
                                                                                                                      instance instNegColex {α : Type u_1} [h : Neg α] :
                                                                                                                      Neg (Colex α)
                                                                                                                      Equations
                                                                                                                        instance instDivColex {α : Type u_1} [h : Div α] :
                                                                                                                        Div (Colex α)
                                                                                                                        Equations
                                                                                                                          instance instSubColex {α : Type u_1} [h : Sub α] :
                                                                                                                          Sub (Colex α)
                                                                                                                          Equations
                                                                                                                            instance Colex.instPow {α : Type u_1} {β : Type u_2} [h : Pow α β] :
                                                                                                                            Pow (Colex α) β
                                                                                                                            Equations
                                                                                                                              instance Colex.instSMul {β : Type u_2} {α : Type u_1} [h : SMul β α] :
                                                                                                                              SMul β (Colex α)
                                                                                                                              Equations
                                                                                                                                instance Colex.instVAdd {β : Type u_2} {α : Type u_1} [h : VAdd β α] :
                                                                                                                                VAdd β (Colex α)
                                                                                                                                Equations
                                                                                                                                  instance Colex.instPow' {α : Type u_1} {β : Type u_2} [h : Pow α β] :
                                                                                                                                  Pow α (Colex β)
                                                                                                                                  Equations
                                                                                                                                    instance Colex.instVAdd' {β : Type u_2} {α : Type u_1} [h : VAdd β α] :
                                                                                                                                    VAdd (Colex β) α
                                                                                                                                    Equations
                                                                                                                                      instance Colex.instSMul' {β : Type u_2} {α : Type u_1} [h : SMul β α] :
                                                                                                                                      SMul (Colex β) α
                                                                                                                                      Equations
                                                                                                                                        instance instSemigroupColex {α : Type u_1} [h : Semigroup α] :
                                                                                                                                        Equations
                                                                                                                                          instance instAddSemigroupColex {α : Type u_1} [h : AddSemigroup α] :
                                                                                                                                          Equations
                                                                                                                                            instance instMulOneClassColex {α : Type u_1} [h : MulOneClass α] :
                                                                                                                                            Equations
                                                                                                                                              instance instAddZeroClassColex {α : Type u_1} [h : AddZeroClass α] :
                                                                                                                                              Equations
                                                                                                                                                instance instMonoidColex {α : Type u_1} [h : Monoid α] :
                                                                                                                                                Equations
                                                                                                                                                  instance instAddMonoidColex {α : Type u_1} [h : AddMonoid α] :
                                                                                                                                                  Equations
                                                                                                                                                    instance instCommMonoidColex {α : Type u_1} [h : CommMonoid α] :
                                                                                                                                                    Equations
                                                                                                                                                      instance instCancelMonoidColex {α : Type u_1} [h : CancelMonoid α] :
                                                                                                                                                      Equations
                                                                                                                                                        instance instDivInvMonoidColex {α : Type u_1} [h : DivInvMonoid α] :
                                                                                                                                                        Equations
                                                                                                                                                          instance instGroupColex {α : Type u_1} [h : Group α] :
                                                                                                                                                          Equations
                                                                                                                                                            instance instAddGroupColex {α : Type u_1} [h : AddGroup α] :
                                                                                                                                                            Equations
                                                                                                                                                              instance instCommGroupColex {α : Type u_1} [h : CommGroup α] :
                                                                                                                                                              Equations
                                                                                                                                                                instance instAddCommGroupColex {α : Type u_1} [h : AddCommGroup α] :
                                                                                                                                                                Equations
                                                                                                                                                                  @[simp]
                                                                                                                                                                  theorem toColex_one {α : Type u_1} [One α] :
                                                                                                                                                                  @[simp]
                                                                                                                                                                  theorem toColex_zero {α : Type u_1} [Zero α] :
                                                                                                                                                                  @[simp]
                                                                                                                                                                  theorem toColex_eq_one {α : Type u_1} [One α] {a : α} :
                                                                                                                                                                  toColex a = 1 a = 1
                                                                                                                                                                  @[simp]
                                                                                                                                                                  theorem toColex_eq_zero {α : Type u_1} [Zero α] {a : α} :
                                                                                                                                                                  toColex a = 0 a = 0
                                                                                                                                                                  @[simp]
                                                                                                                                                                  theorem ofColex_one {α : Type u_1} [One α] :
                                                                                                                                                                  @[simp]
                                                                                                                                                                  theorem ofColex_zero {α : Type u_1} [Zero α] :
                                                                                                                                                                  @[simp]
                                                                                                                                                                  theorem ofColex_eq_one {α : Type u_1} [One α] {a : Colex α} :
                                                                                                                                                                  ofColex a = 1 a = 1
                                                                                                                                                                  @[simp]
                                                                                                                                                                  theorem ofColex_eq_zero {α : Type u_1} [Zero α] {a : Colex α} :
                                                                                                                                                                  ofColex a = 0 a = 0
                                                                                                                                                                  @[simp]
                                                                                                                                                                  theorem toColex_mul {α : Type u_1} [Mul α] (a b : α) :
                                                                                                                                                                  @[simp]
                                                                                                                                                                  theorem toColex_add {α : Type u_1} [Add α] (a b : α) :
                                                                                                                                                                  @[simp]
                                                                                                                                                                  theorem ofColex_mul {α : Type u_1} [Mul α] (a b : Colex α) :
                                                                                                                                                                  @[simp]
                                                                                                                                                                  theorem ofColex_add {α : Type u_1} [Add α] (a b : Colex α) :
                                                                                                                                                                  @[simp]
                                                                                                                                                                  theorem toColex_inv {α : Type u_1} [Inv α] (a : α) :
                                                                                                                                                                  @[simp]
                                                                                                                                                                  theorem toColex_neg {α : Type u_1} [Neg α] (a : α) :
                                                                                                                                                                  @[simp]
                                                                                                                                                                  theorem ofColex_inv {α : Type u_1} [Inv α] (a : Colex α) :
                                                                                                                                                                  @[simp]
                                                                                                                                                                  theorem ofColex_neg {α : Type u_1} [Neg α] (a : Colex α) :
                                                                                                                                                                  @[simp]
                                                                                                                                                                  theorem toColex_div {α : Type u_1} [Div α] (a b : α) :
                                                                                                                                                                  @[simp]
                                                                                                                                                                  theorem toColex_sub {α : Type u_1} [Sub α] (a b : α) :
                                                                                                                                                                  @[simp]
                                                                                                                                                                  theorem ofColex_div {α : Type u_1} [Div α] (a b : Colex α) :
                                                                                                                                                                  @[simp]
                                                                                                                                                                  theorem ofColex_sub {α : Type u_1} [Sub α] (a b : Colex α) :
                                                                                                                                                                  @[simp]
                                                                                                                                                                  theorem toColex_pow {α : Type u_1} {β : Type u_2} [Pow α β] (a : α) (b : β) :
                                                                                                                                                                  toColex (a ^ b) = toColex a ^ b
                                                                                                                                                                  @[simp]
                                                                                                                                                                  theorem toColex_vadd {β : Type u_2} {α : Type u_1} [VAdd β α] (b : β) (a : α) :
                                                                                                                                                                  @[simp]
                                                                                                                                                                  theorem toColex_smul {β : Type u_2} {α : Type u_1} [SMul β α] (b : β) (a : α) :
                                                                                                                                                                  toColex (b a) = b toColex a
                                                                                                                                                                  @[simp]
                                                                                                                                                                  theorem ofColex_pow {α : Type u_1} {β : Type u_2} [Pow α β] (a : Colex α) (b : β) :
                                                                                                                                                                  ofColex (a ^ b) = ofColex a ^ b
                                                                                                                                                                  @[simp]
                                                                                                                                                                  theorem ofColex_smul {β : Type u_2} {α : Type u_1} [SMul β α] (b : β) (a : Colex α) :
                                                                                                                                                                  ofColex (b a) = b ofColex a
                                                                                                                                                                  @[simp]
                                                                                                                                                                  theorem ofColex_vadd {β : Type u_2} {α : Type u_1} [VAdd β α] (b : β) (a : Colex α) :
                                                                                                                                                                  @[simp]
                                                                                                                                                                  theorem pow_toColex {α : Type u_1} {β : Type u_2} [Pow α β] (a : α) (b : β) :
                                                                                                                                                                  a ^ toColex b = a ^ b
                                                                                                                                                                  @[simp]
                                                                                                                                                                  theorem toColex_smul' {β : Type u_2} {α : Type u_1} [SMul β α] (b : β) (a : α) :
                                                                                                                                                                  toColex b a = b a
                                                                                                                                                                  @[simp]
                                                                                                                                                                  theorem toColex_vadd' {β : Type u_2} {α : Type u_1} [VAdd β α] (b : β) (a : α) :
                                                                                                                                                                  toColex b +ᵥ a = b +ᵥ a
                                                                                                                                                                  @[simp]
                                                                                                                                                                  theorem pow_ofColex {α : Type u_1} {β : Type u_2} [Pow α β] (a : α) (b : Colex β) :
                                                                                                                                                                  a ^ ofColex b = a ^ b
                                                                                                                                                                  @[simp]
                                                                                                                                                                  theorem ofColex_smul' {β : Type u_2} {α : Type u_1} [SMul β α] (b : Colex β) (a : α) :
                                                                                                                                                                  ofColex b a = b a
                                                                                                                                                                  @[simp]
                                                                                                                                                                  theorem ofColex_vadd' {β : Type u_2} {α : Type u_1} [VAdd β α] (b : Colex β) (a : α) :
                                                                                                                                                                  ofColex b +ᵥ a = b +ᵥ a
                                                                                                                                                                  @[simp]
                                                                                                                                                                  theorem isRegular_toColex {α : Type u_1} [Monoid α] {a : α} :
                                                                                                                                                                  @[simp]
                                                                                                                                                                  theorem isRegular_ofColex {α : Type u_1} [Monoid α] {a : Colex α} :