Zulip Chat Archive

Stream: mathlib4

Topic: power of isomorphisms


Kenny Lau (Oct 28 2025 at 15:29):

(see correct examples below)

Kenny Lau (Oct 28 2025 at 15:30):

making it rfl would probably be a large refactor (so maybe only @Yaël Dillies would be qualified to do that), but maybe we can at least have a (simp) lemma?

Yaël Dillies (Oct 28 2025 at 15:55):

There was indeed a PR of mine somewhere doing exactly this

Aaron Liu (Oct 28 2025 at 16:01):

I don't think what you've written is actually true

Aaron Liu (Oct 28 2025 at 16:02):

pointwise power of ring hom not the same as iterating the ring hom

Kenny Lau (Oct 28 2025 at 16:02):

there's no structure on ring hom

Kenny Lau (Oct 28 2025 at 16:02):

adding two ring homs doesn't preserve multiplication, multiplying two ring homs doesn't preserve addition

Aaron Liu (Oct 28 2025 at 16:04):

So you want to add an instance for multiplying ringauts by composition?

Kenny Lau (Oct 28 2025 at 16:04):

it's already there

Kenny Lau (Oct 28 2025 at 16:04):

https://leanprover-community.github.io/mathlib4_docs/Mathlib/Algebra/Ring/Aut.html#RingAut.instGroup

Kenny Lau (Oct 28 2025 at 16:06):

ah you're right my statements should be ⇑(e ^ n) instead

Kenny Lau (Oct 28 2025 at 16:07):

import Mathlib

variable (R : Type*) [CommRing R]

#synth Group (R ≃+* R)
example (e : R ≃+* R) (n : ) : (e ^ n) = e^[n] := rfl -- nope

example (e : R ≃+* R) (n : ) : (e ^ n) = e^[n] :=
  n.recOn rfl fun _ ih  congr($ih  $rfl)

Kenny Lau (Oct 28 2025 at 16:08):

@Yaël Dillies can you link to your PR?

Aaron Liu (Oct 28 2025 at 18:23):

Kenny Lau said:

making it rfl would probably be a large refactor (so maybe only Yaël Dillies would be qualified to do that), but maybe we can at least have a (simp) lemma?

I think it would not be, what makes you think this is a big thing?

Kenny Lau (Oct 28 2025 at 19:17):

i don't know


Last updated: Dec 20 2025 at 21:32 UTC