ruc-ai4math/mathlib_handler_benchmark_410 huggingface dataset:
-- mem_pNilradical
theorem mem_pNilradical {R : Type*} [CommSemiring R] {p : ℕ} {x : R} :
    x ∈ pNilradical R p ↔ ∃ n : ℕ, x ^ p ^ n = 0 
Arguments: {R : Type u_1} [CommSemiring R] {p : ℕ} {x : R}
Goal: x ∈ pNilradical R p ↔ ∃ n, x ^ p ^ n = 0
-- sub_mem_pNilradical_iff_pow_expChar_pow_eq
theorem sub_mem_pNilradical_iff_pow_expChar_pow_eq {R : Type*} [CommRing R] {p : ℕ} [ExpChar R p]
    {x y : R} : x - y ∈ pNilradical R p ↔ ∃ n : ℕ, x ^ p ^ n = y ^ p ^ n 
Arguments: {R : Type u_1} [CommRing R] {p : ℕ} [ExpChar R p] {x y : R}
Goal: x - y ∈ pNilradical R p ↔ ∃ n, x ^ p ^ n = y ^ p ^ n
-- pow_expChar_pow_inj_of_pNilradical_eq_bot
theorem pow_expChar_pow_inj_of_pNilradical_eq_bot (R : Type*) [CommRing R] (p : ℕ) [ExpChar R p]
    (h : pNilradical R p = ⊥) (n : ℕ) : Function.Injective fun x : R ↦ x ^ p ^ n 
Arguments: (R : Type u_1) [CommRing R] (p : ℕ) [ExpChar R p] (h : pNilradical R p = ⊥) (n : ℕ)
Goal: Function.Injective fun x => x ^ p ^ n
-- pNilradical_eq_bot_of_frobenius_inj
theorem pNilradical_eq_bot_of_frobenius_inj (R : Type*) [CommRing R] (p : ℕ) [ExpChar R p]
    (h : Function.Injective (frobenius R p)) : pNilradical R p = ⊥ 
Arguments: (R : Type u_1) [CommRing R] (p : ℕ) [ExpChar R p] (h : Function.Injective ⇑(frobenius R p))
Goal: pNilradical R p = ⊥
-- PerfectRing.pNilradical_eq_bot
theorem PerfectRing.pNilradical_eq_bot (R : Type*) [CommRing R] (p : ℕ) [ExpChar R p]
    [PerfectRing R p] : pNilradical R p = ⊥ 
Arguments: (R : Type u_1) [CommRing R] (p : ℕ) [ExpChar R p] [PerfectRing R p]
Goal: pNilradical R p = ⊥
-- IsPRadical.ker_le'
@[mk_iff]
class IsPRadical : Prop where
  pow_mem' : ∀ x : L, ∃ (n : ℕ) (y : K), i y = x ^ p ^ n
  ker_le' : RingHom.ker i ≤ pNilradical K p
Arguments: {K : Type u_1} {L : Type u_2} [CommSemiring K] [CommSemiring L] {i : K →+* L} {p : ℕ} [self : IsPRadical i p]
Goal: RingHom.ker i ≤ pNilradical K p
-- IsPRadical.pow_mem'
@[mk_iff]
class IsPRadical : Prop where
  pow_mem' : ∀ x : L, ∃ (n : ℕ) (y : K), i y = x ^ p ^ n
  ker_le' : RingHom.ker i ≤ pNilradical K p
Arguments: {K : Type u_1} {L : Type u_2} [CommSemiring K] [CommSemiring L] {i : K →+* L} {p : ℕ} [self : IsPRadical i p] (x : L)
Goal: ∃ n y, i y = x ^ p ^ n
-- isPRadical_iff
@[mk_iff]
class IsPRadical : Prop where
  pow_mem' : ∀ x : L, ∃ (n : ℕ) (y : K), i y = x ^ p ^ n
  ker_le' : RingHom.ker i ≤ pNilradical K p
Arguments: {K : Type u_1} {L : Type u_2} [CommSemiring K] [CommSemiring L] (i : K →+* L) (p : ℕ)
Goal: IsPRadical i p ↔ (∀ (x : L), ∃ n y, i y = x ^ p ^ n) ∧ RingHom.ker i ≤ pNilradical K p
-- IsPRadical.pow_mem
theorem IsPRadical.pow_mem [IsPRadical i p] (x : L) :
    ∃ (n : ℕ) (y : K), i y = x ^ p ^ n 
Arguments: {K : Type u_1} {L : Type u_2} [CommSemiring K] [CommSemiring L] (i : K →+* L) (p : ℕ) [IsPRadical i p] (x : L)
Goal: ∃ n y, i y = x ^ p ^ n
-- IsPRadical.ker_le
theorem IsPRadical.ker_le [IsPRadical i p] :
    RingHom.ker i ≤ pNilradical K p 
Arguments: {K : Type u_1} {L : Type u_2} [CommSemiring K] [CommSemiring L] (i : K →+* L) (p : ℕ) [IsPRadical i p]
Goal: RingHom.ker i ≤ pNilradical K p
-- IsPRadical.comap_pNilradical
theorem IsPRadical.comap_pNilradical [IsPRadical i p] :
    (pNilradical L p).comap i = pNilradical K p 
Arguments: {K : Type u_1} {L : Type u_2} [CommSemiring K] [CommSemiring L] (i : K →+* L) (p : ℕ) [IsPRadical i p]
Goal: Ideal.comap i (pNilradical L p) = pNilradical K p
-- IsPRadical.trans
theorem IsPRadical.trans [IsPRadical i p] [IsPRadical f p] :
    IsPRadical (f.comp i) p 
Arguments: {K : Type u_1} {L : Type u_2} {M : Type u_3} [CommSemiring K] [CommSemiring L] [CommSemiring M] (i : K →+* L) (f : L →+* M) (p : ℕ) [IsPRadical i p] [IsPRadical f p]
Goal: IsPRadical (f.comp i) p
-- RingHom.pNilradical_le_ker_of_perfectRing
theorem RingHom.pNilradical_le_ker_of_perfectRing [PerfectRing L p] :
    pNilradical K p ≤ RingHom.ker i 
Arguments: {K : Type u_1} {L : Type u_2} [CommSemiring K] [CommSemiring L] (i : K →+* L) (p : ℕ) [ExpChar L p] [PerfectRing L p]
Goal: pNilradical K p ≤ RingHom.ker i
-- IsPerfectClosure.ker_eq
theorem IsPerfectClosure.ker_eq [PerfectRing L p] [IsPerfectClosure i p] :
    RingHom.ker i = pNilradical K p 
Arguments: {K : Type u_1} {L : Type u_2} [CommSemiring K] [CommSemiring L] (i : K →+* L) (p : ℕ) [ExpChar L p] [PerfectRing L p] [IsPerfectClosure i p]
Goal: RingHom.ker i = pNilradical K p
-- PerfectRing.lift_aux
theorem lift_aux (x : L) : ∃ y : ℕ × K, i y.2 = x ^ p ^ y.1 
Arguments: {K : Type u_1} {L : Type u_2} [CommSemiring K] [CommSemiring L] (i : K →+* L) (p : ℕ) [IsPRadical i p] (x : L)
Goal: ∃ y, i y.2 = x ^ p ^ y.1
-- PerfectRing.liftAux_self_apply
@[simp]
theorem liftAux_self_apply [PerfectRing L p] (x : L) : liftAux i i p x = x 
Arguments: {K : Type u_1} {L : Type u_2} [CommSemiring K] [CommSemiring L] (i : K →+* L) (p : ℕ) [ExpChar L p] [IsPRadical i p] [PerfectRing L p] (x : L)
Goal: PerfectRing.liftAux i i p x = x
-- PerfectRing.liftAux_self
@[simp]
theorem liftAux_self [PerfectRing L p] : liftAux i i p = id 
Arguments: {K : Type u_1} {L : Type u_2} [CommSemiring K] [CommSemiring L] (i : K →+* L) (p : ℕ) [ExpChar L p] [IsPRadical i p] [PerfectRing L p]
Goal: PerfectRing.liftAux i i p = id
-- PerfectRing.liftAux_id_apply
@[simp]
theorem liftAux_id_apply (x : K) : liftAux (RingHom.id K) j p x = j x 
Arguments: {K : Type u_1} {M : Type u_3} [CommSemiring K] [CommSemiring M] (j : K →+* M) (p : ℕ) [ExpChar M p] [PerfectRing M p] (x : K)
Goal: PerfectRing.liftAux (RingHom.id K) j p x = j x
-- PerfectRing.liftAux_id
@[simp]
theorem liftAux_id : liftAux (RingHom.id K) j p = j 
Arguments: {K : Type u_1} {M : Type u_3} [CommSemiring K] [CommSemiring M] (j : K →+* M) (p : ℕ) [ExpChar M p] [PerfectRing M p]
Goal: PerfectRing.liftAux (RingHom.id K) j p = ⇑j
-- IsPRadical.injective_comp_of_pNilradical_eq_bot
theorem injective_comp_of_pNilradical_eq_bot [IsPRadical i p] (h : pNilradical M p = ⊥) :
    Function.Injective fun f : L →+* M ↦ f.comp i 
Arguments: {K : Type u_1} {L : Type u_2} {M : Type u_3} [CommRing K] [CommRing L] [CommRing M] (i : K →+* L) (p : ℕ) [ExpChar M p] [IsPRadical i p] (h : pNilradical M p = ⊥)
Goal: Function.Injective fun f => f.comp i
-- IsPRadical.injective_comp
theorem injective_comp [IsPRadical i p] [IsReduced M] :
    Function.Injective fun f : L →+* M ↦ f.comp i 
Arguments: {K : Type u_1} {L : Type u_2} (M : Type u_3) [CommRing K] [CommRing L] [CommRing M] (i : K →+* L) (p : ℕ) [ExpChar M p] [IsPRadical i p] [IsReduced M]
Goal: Function.Injective fun f => f.comp i
-- IsPRadical.injective_comp_of_perfect
theorem injective_comp_of_perfect [IsPRadical i p] [PerfectRing M p] :
    Function.Injective fun f : L →+* M ↦ f.comp i 
Arguments: {K : Type u_1} {L : Type u_2} (M : Type u_3) [CommRing K] [CommRing L] [CommRing M] (i : K →+* L) (p : ℕ) [ExpChar M p] [IsPRadical i p] [PerfectRing M p]
Goal: Function.Injective fun f => f.comp i
-- PerfectRing.liftAux_apply
theorem liftAux_apply (x : L) (n : ℕ) (y : K) (h : i y = x ^ p ^ n) :
    liftAux i j p x = (iterateFrobeniusEquiv M p n).symm (j y) 
Arguments: {K : Type u_1} {L : Type u_2} {M : Type u_3} [CommRing K] [CommRing L] [CommRing M] (i : K →+* L) (j : K →+* M) (p : ℕ) [ExpChar K p] [ExpChar M p] [PerfectRing M p] [IsPRadical i p] (x : L) (n : ℕ) (y : K) (h : i y = x ^ p ^ n)
Goal: PerfectRing.liftAux i j p x = (iterateFrobeniusEquiv M p n).symm (j y)
-- PerfectRing.lift_apply
theorem lift_apply (x : L) (n : ℕ) (y : K) (h : i y = x ^ p ^ n) :
    lift i j p x = (iterateFrobeniusEquiv M p n).symm (j y) 
Arguments: {K : Type u_1} {L : Type u_2} {M : Type u_3} [CommRing K] [CommRing L] [CommRing M] (i : K →+* L) (j : K →+* M) (p : ℕ) [ExpChar K p] [ExpChar L p] [ExpChar M p] [PerfectRing M p] [IsPRadical i p] (x : L) (n : ℕ) (y : K) (h : i y = x ^ p ^ n)
Goal: (PerfectRing.lift i j p) x = (iterateFrobeniusEquiv M p n).symm (j y)
-- PerfectRing.lift_comp_apply
@[simp]
theorem lift_comp_apply (x : K) : lift i j p (i x) = j x 
Arguments: {K : Type u_1} {L : Type u_2} {M : Type u_3} [CommRing K] [CommRing L] [CommRing M] (i : K →+* L) (j : K →+* M) (p : ℕ) [ExpChar K p] [ExpChar L p] [ExpChar M p] [PerfectRing M p] [IsPRadical i p] (x : K)
Goal: (PerfectRing.lift i j p) (i x) = j x
-- PerfectRing.lift_comp
@[simp]
theorem lift_comp : (lift i j p).comp i = j 
Arguments: {K : Type u_1} {L : Type u_2} {M : Type u_3} [CommRing K] [CommRing L] [CommRing M] (i : K →+* L) (j : K →+* M) (p : ℕ) [ExpChar K p] [ExpChar L p] [ExpChar M p] [PerfectRing M p] [IsPRadical i p]
Goal: (PerfectRing.lift i j p).comp i = j
-- PerfectRing.lift_self_apply
theorem lift_self_apply [PerfectRing L p] (x : L) : lift i i p x = x 
Arguments: {K : Type u_1} {L : Type u_2} [CommRing K] [CommRing L] (i : K →+* L) (p : ℕ) [ExpChar K p] [ExpChar L p] [IsPRadical i p] [PerfectRing L p] (x : L)
Goal: (PerfectRing.lift i i p) x = x
-- PerfectRing.lift_self
@[simp]
theorem lift_self [PerfectRing L p] : lift i i p = RingHom.id L 
Arguments: {K : Type u_1} {L : Type u_2} [CommRing K] [CommRing L] (i : K →+* L) (p : ℕ) [ExpChar K p] [ExpChar L p] [IsPRadical i p] [PerfectRing L p]
Goal: PerfectRing.lift i i p = RingHom.id L
-- PerfectRing.lift_id_apply
theorem lift_id_apply (x : K) : lift (RingHom.id K) j p x = j x 
Arguments: {K : Type u_1} {M : Type u_3} [CommRing K] [CommRing M] (j : K →+* M) (p : ℕ) [ExpChar K p] [ExpChar M p] [PerfectRing M p] (x : K)
Goal: (PerfectRing.lift (RingHom.id K) j p) x = j x
-- PerfectRing.lift_id
@[simp]
theorem lift_id : lift (RingHom.id K) j p = j 
Arguments: {K : Type u_1} {M : Type u_3} [CommRing K] [CommRing M] (j : K →+* M) (p : ℕ) [ExpChar K p] [ExpChar M p] [PerfectRing M p]
Goal: PerfectRing.lift (RingHom.id K) j p = j
-- PerfectRing.comp_lift
@[simp]
theorem comp_lift : lift i (f.comp i) p = f 
Arguments: {K : Type u_1} {L : Type u_2} {M : Type u_3} [CommRing K] [CommRing L] [CommRing M] (i : K →+* L) (f : L →+* M) (p : ℕ) [ExpChar K p] [ExpChar L p] [ExpChar M p] [PerfectRing M p] [IsPRadical i p]
Goal: PerfectRing.lift i (f.comp i) p = f
-- PerfectRing.comp_lift_apply
theorem comp_lift_apply (x : L) : lift i (f.comp i) p x = f x 
Arguments: {K : Type u_1} {L : Type u_2} {M : Type u_3} [CommRing K] [CommRing L] [CommRing M] (i : K →+* L) (f : L →+* M) (p : ℕ) [ExpChar K p] [ExpChar L p] [ExpChar M p] [PerfectRing M p] [IsPRadical i p] (x : L)
Goal: (PerfectRing.lift i (f.comp i) p) x = f x
-- PerfectRing.liftEquiv_apply
theorem liftEquiv_apply : liftEquiv M i p j = lift i j p 
Arguments: {K : Type u_1} {L : Type u_2} {M : Type u_3} [CommRing K] [CommRing L] [CommRing M] (i : K →+* L) (j : K →+* M) (p : ℕ) [ExpChar K p] [ExpChar L p] [ExpChar M p] [PerfectRing M p] [IsPRadical i p]
Goal: (PerfectRing.liftEquiv M i p) j = PerfectRing.lift i j p
-- PerfectRing.liftEquiv_symm_apply
theorem liftEquiv_symm_apply : (liftEquiv M i p).symm f = f.comp i 
Arguments: {K : Type u_1} {L : Type u_2} {M : Type u_3} [CommRing K] [CommRing L] [CommRing M] (i : K →+* L) (f : L →+* M) (p : ℕ) [ExpChar K p] [ExpChar L p] [ExpChar M p] [PerfectRing M p] [IsPRadical i p]
Goal: (PerfectRing.liftEquiv M i p).symm f = f.comp i
-- PerfectRing.liftEquiv_id_apply
theorem liftEquiv_id_apply : liftEquiv M (RingHom.id K) p j = j 
Arguments: {K : Type u_1} {M : Type u_3} [CommRing K] [CommRing M] (j : K →+* M) (p : ℕ) [ExpChar K p] [ExpChar M p] [PerfectRing M p]
Goal: (PerfectRing.liftEquiv M (RingHom.id K) p) j = j
-- PerfectRing.liftEquiv_id
@[simp]
theorem liftEquiv_id : liftEquiv M (RingHom.id K) p = Equiv.refl _ 
Arguments: {K : Type u_1} {M : Type u_3} [CommRing K] [CommRing M] (p : ℕ) [ExpChar K p] [ExpChar M p] [PerfectRing M p]
Goal: PerfectRing.liftEquiv M (RingHom.id K) p = Equiv.refl (K →+* M)
-- PerfectRing.lift_comp_lift
@[simp]
theorem lift_comp_lift : (lift j k p).comp (lift i j p) = lift i k p 
Arguments: {K : Type u_1} {L : Type u_2} {M : Type u_3} {N : Type u_4} [CommRing K] [CommRing L] [CommRing M] [CommRing N] (i : K →+* L) (j : K →+* M) (k : K →+* N) (p : ℕ) [ExpChar K p] [ExpChar L p] [ExpChar M p] [ExpChar N p] [PerfectRing M p] [IsPRadical i p] [PerfectRing N p] [IsPRadical j p]
Goal: (PerfectRing.lift j k p).comp (PerfectRing.lift i j p) = PerfectRing.lift i k p
-- PerfectRing.lift_comp_lift_apply
@[simp]
theorem lift_comp_lift_apply (x : L) : lift j k p (lift i j p x) = lift i k p x 
Arguments: {K : Type u_1} {L : Type u_2} {M : Type u_3} {N : Type u_4} [CommRing K] [CommRing L] [CommRing M] [CommRing N] (i : K →+* L) (j : K →+* M) (k : K →+* N) (p : ℕ) [ExpChar K p] [ExpChar L p] [ExpChar M p] [ExpChar N p] [PerfectRing M p] [IsPRadical i p] [PerfectRing N p] [IsPRadical j p] (x : L)
Goal: (PerfectRing.lift j k p) ((PerfectRing.lift i j p) x) = (PerfectRing.lift i k p) x
-- PerfectRing.lift_comp_lift_apply_eq_self
theorem lift_comp_lift_apply_eq_self [PerfectRing L p] (x : L) :
    lift j i p (lift i j p x) = x 
Arguments: {K : Type u_1} {L : Type u_2} {M : Type u_3} [CommRing K] [CommRing L] [CommRing M] (i : K →+* L) (j : K →+* M) (p : ℕ) [ExpChar K p] [ExpChar L p] [ExpChar M p] [PerfectRing M p] [IsPRadical i p] [IsPRadical j p] [PerfectRing L p] (x : L)
Goal: (PerfectRing.lift j i p) ((PerfectRing.lift i j p) x) = x
-- PerfectRing.lift_comp_lift_eq_id
theorem lift_comp_lift_eq_id [PerfectRing L p] :
    (lift j i p).comp (lift i j p) = RingHom.id L 
Arguments: {K : Type u_1} {L : Type u_2} {M : Type u_3} [CommRing K] [CommRing L] [CommRing M] (i : K →+* L) (j : K →+* M) (p : ℕ) [ExpChar K p] [ExpChar L p] [ExpChar M p] [PerfectRing M p] [IsPRadical i p] [IsPRadical j p] [PerfectRing L p]
Goal: (PerfectRing.lift j i p).comp (PerfectRing.lift i j p) = RingHom.id L
-- PerfectRing.lift_lift
@[simp]
theorem lift_lift : lift g (lift i j p) p = lift (g.comp i) j p 
Arguments: {K : Type u_1} {L : Type u_2} {M : Type u_3} {N : Type u_4} [CommRing K] [CommRing L] [CommRing M] [CommRing N] (i : K →+* L) (j : K →+* M) (g : L →+* N) (p : ℕ) [ExpChar K p] [ExpChar L p] [ExpChar M p] [ExpChar N p] [PerfectRing M p] [IsPRadical i p] [IsPRadical g p] [IsPRadical (g.comp i) p]
Goal: PerfectRing.lift g (PerfectRing.lift i j p) p = PerfectRing.lift (g.comp i) j p
-- PerfectRing.lift_lift_apply
theorem lift_lift_apply (x : N) : lift g (lift i j p) p x = lift (g.comp i) j p x 
Arguments: {K : Type u_1} {L : Type u_2} {M : Type u_3} {N : Type u_4} [CommRing K] [CommRing L] [CommRing M] [CommRing N] (i : K →+* L) (j : K →+* M) (g : L →+* N) (p : ℕ) [ExpChar K p] [ExpChar L p] [ExpChar M p] [ExpChar N p] [PerfectRing M p] [IsPRadical i p] [IsPRadical g p] [IsPRadical (g.comp i) p] (x : N)
Goal: (PerfectRing.lift g (PerfectRing.lift i j p) p) x = (PerfectRing.lift (g.comp i) j p) x
-- PerfectRing.liftEquiv_comp_apply
@[simp]
theorem liftEquiv_comp_apply :
    liftEquiv M g p (liftEquiv M i p j) = liftEquiv M (g.comp i) p j 
Arguments: {K : Type u_1} {L : Type u_2} {M : Type u_3} {N : Type u_4} [CommRing K] [CommRing L] [CommRing M] [CommRing N] (i : K →+* L) (j : K →+* M) (g : L →+* N) (p : ℕ) [ExpChar K p] [ExpChar L p] [ExpChar M p] [ExpChar N p] [PerfectRing M p] [IsPRadical i p] [IsPRadical g p] [IsPRadical (g.comp i) p]
Goal: (PerfectRing.liftEquiv M g p) ((PerfectRing.liftEquiv M i p) j) = (PerfectRing.liftEquiv M (g.comp i) p) j
-- PerfectRing.liftEquiv_trans
@[simp]
theorem liftEquiv_trans :
    (liftEquiv M i p).trans (liftEquiv M g p) = liftEquiv M (g.comp i) p 
Arguments: {K : Type u_1} {L : Type u_2} {M : Type u_3} {N : Type u_4} [CommRing K] [CommRing L] [CommRing M] [CommRing N] (i : K →+* L) (g : L →+* N) (p : ℕ) [ExpChar K p] [ExpChar L p] [ExpChar M p] [ExpChar N p] [PerfectRing M p] [IsPRadical i p] [IsPRadical g p] [IsPRadical (g.comp i) p]
Goal: (PerfectRing.liftEquiv M i p).trans (PerfectRing.liftEquiv M g p) = PerfectRing.liftEquiv M (g.comp i) p
-- IsPerfectClosure.equiv_toRingHom
theorem equiv_toRingHom : (equiv i j p).toRingHom = PerfectRing.lift i j p 
Arguments: {K : Type u_1} {L : Type u_2} {M : Type u_3} [CommRing K] [CommRing L] [CommRing M] (i : K →+* L) (j : K →+* M) (p : ℕ) [ExpChar K p] [ExpChar L p] [ExpChar M p] [PerfectRing L p] [IsPerfectClosure i p] [PerfectRing M p] [IsPerfectClosure j p]
Goal: (IsPerfectClosure.equiv i j p).toRingHom = PerfectRing.lift i j p
-- IsPerfectClosure.equiv_symm
@[simp]
theorem equiv_symm : (equiv i j p).symm = equiv j i p 
Arguments: {K : Type u_1} {L : Type u_2} {M : Type u_3} [CommRing K] [CommRing L] [CommRing M] (i : K →+* L) (j : K →+* M) (p : ℕ) [ExpChar K p] [ExpChar L p] [ExpChar M p] [PerfectRing L p] [IsPerfectClosure i p] [PerfectRing M p] [IsPerfectClosure j p]
Goal: (IsPerfectClosure.equiv i j p).symm = IsPerfectClosure.equiv j i p
-- IsPerfectClosure.equiv_symm_toRingHom
theorem equiv_symm_toRingHom :
    (equiv i j p).symm.toRingHom = PerfectRing.lift j i p 
Arguments: {K : Type u_1} {L : Type u_2} {M : Type u_3} [CommRing K] [CommRing L] [CommRing M] (i : K →+* L) (j : K →+* M) (p : ℕ) [ExpChar K p] [ExpChar L p] [ExpChar M p] [PerfectRing L p] [IsPerfectClosure i p] [PerfectRing M p] [IsPerfectClosure j p]
Goal: (IsPerfectClosure.equiv i j p).symm.toRingHom = PerfectRing.lift j i p
-- IsPerfectClosure.equiv_apply
theorem equiv_apply (x : L) (n : ℕ) (y : K) (h : i y = x ^ p ^ n) :
    equiv i j p x = (iterateFrobeniusEquiv M p n).symm (j y) 
Arguments: {K : Type u_1} {L : Type u_2} {M : Type u_3} [CommRing K] [CommRing L] [CommRing M] (i : K →+* L) (j : K →+* M) (p : ℕ) [ExpChar K p] [ExpChar L p] [ExpChar M p] [PerfectRing L p] [IsPerfectClosure i p] [PerfectRing M p] [IsPerfectClosure j p] (x : L) (n : ℕ) (y : K) (h : i y = x ^ p ^ n)
Goal: (IsPerfectClosure.equiv i j p) x = (iterateFrobeniusEquiv M p n).symm (j y)
-- IsPerfectClosure.equiv_symm_apply
theorem equiv_symm_apply (x : M) (n : ℕ) (y : K) (h : j y = x ^ p ^ n) :
    (equiv i j p).symm x = (iterateFrobeniusEquiv L p n).symm (i y) 
Arguments: {K : Type u_1} {L : Type u_2} {M : Type u_3} [CommRing K] [CommRing L] [CommRing M] (i : K →+* L) (j : K →+* M) (p : ℕ) [ExpChar K p] [ExpChar L p] [ExpChar M p] [PerfectRing L p] [IsPerfectClosure i p] [PerfectRing M p] [IsPerfectClosure j p] (x : M) (n : ℕ) (y : K) (h : j y = x ^ p ^ n)
Goal: (IsPerfectClosure.equiv i j p).symm x = (iterateFrobeniusEquiv L p n).symm (i y)
-- IsPerfectClosure.equiv_self_apply
theorem equiv_self_apply (x : L) : equiv i i p x = x 
Arguments: {K : Type u_1} {L : Type u_2} [CommRing K] [CommRing L] (i : K →+* L) (p : ℕ) [ExpChar K p] [ExpChar L p] [PerfectRing L p] [IsPerfectClosure i p] (x : L)
Goal: (IsPerfectClosure.equiv i i p) x = x
-- IsPerfectClosure.equiv_self
@[simp]
theorem equiv_self : equiv i i p = RingEquiv.refl L 
Arguments: {K : Type u_1} {L : Type u_2} [CommRing K] [CommRing L] (i : K →+* L) (p : ℕ) [ExpChar K p] [ExpChar L p] [PerfectRing L p] [IsPerfectClosure i p]
Goal: IsPerfectClosure.equiv i i p = RingEquiv.refl L
-- IsPerfectClosure.equiv_comp_apply
@[simp]
theorem equiv_comp_apply (x : K) : equiv i j p (i x) = j x 
Arguments: {K : Type u_1} {L : Type u_2} {M : Type u_3} [CommRing K] [CommRing L] [CommRing M] (i : K →+* L) (j : K →+* M) (p : ℕ) [ExpChar K p] [ExpChar L p] [ExpChar M p] [PerfectRing L p] [IsPerfectClosure i p] [PerfectRing M p] [IsPerfectClosure j p] (x : K)
Goal: (IsPerfectClosure.equiv i j p) (i x) = j x
-- IsPerfectClosure.equiv_comp
@[simp]
theorem equiv_comp : RingHom.comp (equiv i j p) i = j 
Arguments: {K : Type u_1} {L : Type u_2} {M : Type u_3} [CommRing K] [CommRing L] [CommRing M] (i : K →+* L) (j : K →+* M) (p : ℕ) [ExpChar K p] [ExpChar L p] [ExpChar M p] [PerfectRing L p] [IsPerfectClosure i p] [PerfectRing M p] [IsPerfectClosure j p]
Goal: (↑(IsPerfectClosure.equiv i j p)).comp i = j
-- IsPerfectClosure.equiv_comp_equiv_apply
@[simp]
theorem equiv_comp_equiv_apply (x : L) :
    equiv j k p (equiv i j p x) = equiv i k p x 
Arguments: {K : Type u_1} {L : Type u_2} {M : Type u_3} {N : Type u_4} [CommRing K] [CommRing L] [CommRing M] [CommRing N] (i : K →+* L) (j : K →+* M) (k : K →+* N) (p : ℕ) [ExpChar K p] [ExpChar L p] [ExpChar M p] [ExpChar N p] [PerfectRing L p] [IsPerfectClosure i p] [PerfectRing M p] [IsPerfectClosure j p] [PerfectRing N p] [IsPerfectClosure k p] (x : L)
Goal: (IsPerfectClosure.equiv j k p) ((IsPerfectClosure.equiv i j p) x) = (IsPerfectClosure.equiv i k p) x
-- IsPerfectClosure.equiv_comp_equiv
@[simp]
theorem equiv_comp_equiv : (equiv i j p).trans (equiv j k p) = equiv i k p 
Arguments: {K : Type u_1} {L : Type u_2} {M : Type u_3} {N : Type u_4} [CommRing K] [CommRing L] [CommRing M] [CommRing N] (i : K →+* L) (j : K →+* M) (k : K →+* N) (p : ℕ) [ExpChar K p] [ExpChar L p] [ExpChar M p] [ExpChar N p] [PerfectRing L p] [IsPerfectClosure i p] [PerfectRing M p] [IsPerfectClosure j p] [PerfectRing N p] [IsPerfectClosure k p]
Goal: (IsPerfectClosure.equiv i j p).trans (IsPerfectClosure.equiv j k p) = IsPerfectClosure.equiv i k p
-- IsPerfectClosure.equiv_comp_equiv_apply_eq_self
theorem equiv_comp_equiv_apply_eq_self (x : L) :
    equiv j i p (equiv i j p x) = x 
Arguments: {K : Type u_1} {L : Type u_2} {M : Type u_3} [CommRing K] [CommRing L] [CommRing M] (i : K →+* L) (j : K →+* M) (p : ℕ) [ExpChar K p] [ExpChar L p] [ExpChar M p] [PerfectRing L p] [IsPerfectClosure i p] [PerfectRing M p] [IsPerfectClosure j p] (x : L)
Goal: (IsPerfectClosure.equiv j i p) ((IsPerfectClosure.equiv i j p) x) = x
-- IsPerfectClosure.equiv_comp_equiv_eq_id
theorem equiv_comp_equiv_eq_id :
    (equiv i j p).trans (equiv j i p) = RingEquiv.refl L 
Arguments: {K : Type u_1} {L : Type u_2} {M : Type u_3} [CommRing K] [CommRing L] [CommRing M] (i : K →+* L) (j : K →+* M) (p : ℕ) [ExpChar K p] [ExpChar L p] [ExpChar M p] [PerfectRing L p] [IsPerfectClosure i p] [PerfectRing M p] [IsPerfectClosure j p]
Goal: (IsPerfectClosure.equiv i j p).trans (IsPerfectClosure.equiv j i p) = RingEquiv.refl L
-- IsPRadical.isPurelyInseparable
theorem IsPRadical.isPurelyInseparable [IsPRadical (algebraMap K L) p] :
    IsPurelyInseparable K L 
Arguments: (K : Type u_1) (L : Type u_2) [Field K] [Field L] [Algebra K L] (p : ℕ) [ExpChar K p] [IsPRadical (algebraMap K L) p]
Goal: IsPurelyInseparable K L
-- Fintype.isPrimePow_card_of_field
theorem Fintype.isPrimePow_card_of_field {α} [Fintype α] [Field α] : IsPrimePow ‖α‖ 
Arguments: {α : Type u_1} [Fintype α] [Field α]
Goal: IsPrimePow ‖α‖
-- Fintype.nonempty_field_iff
theorem Fintype.nonempty_field_iff {α} [Fintype α] : Nonempty (Field α) ↔ IsPrimePow ‖α‖ 
Arguments: {α : Type u_1} [Fintype α]
Goal: Nonempty (Field α) ↔ IsPrimePow ‖α‖
-- Fintype.not_isField_of_card_not_prime_pow
theorem Fintype.not_isField_of_card_not_prime_pow {α} [Fintype α] [Ring α] :
    ¬IsPrimePow ‖α‖ → ¬IsField α 
Arguments: {α : Type u_1} [Fintype α] [Ring α]
Goal: ¬IsPrimePow ‖α‖ → ¬IsField α
-- Infinite.nonempty_field
theorem Infinite.nonempty_field {α : Type u} [Infinite α] : Nonempty (Field α) 
Arguments: {α : Type u} [Infinite α]
Goal: Nonempty (Field α)
-- Field.nonempty_iff
theorem Field.nonempty_iff {α : Type u} : Nonempty (Field α) ↔ IsPrimePow #α 
Arguments: {α : Type u}
Goal: Nonempty (Field α) ↔ IsPrimePow #α
-- AddAction.IsMinimal.dense_orbit
class AddAction.IsMinimal (M α : Type*) [AddMonoid M] [TopologicalSpace α] [AddAction M α] :
    Prop where
  dense_orbit : ∀ x : α, Dense (AddAction.orbit M x)
Arguments: {M : Type u_1} {α : Type u_2} [AddMonoid M] [TopologicalSpace α] [AddAction M α] [self : AddAction.IsMinimal M α] (x : α)
Goal: Dense (AddAction.orbit M x)
-- MulAction.IsMinimal.dense_orbit
@[to_additive]
class MulAction.IsMinimal (M α : Type*) [Monoid M] [TopologicalSpace α] [MulAction M α] :
    Prop where
  dense_orbit : ∀ x : α, Dense (MulAction.orbit M x)
Arguments: {M : Type u_1} {α : Type u_2} [Monoid M] [TopologicalSpace α] [MulAction M α] [self : MulAction.IsMinimal M α] (x : α)
Goal: Dense (MulAction.orbit M x)
-- MulAction.dense_orbit
@[to_additive]
theorem MulAction.dense_orbit [IsMinimal M α] (x : α) : Dense (orbit M x) 
Arguments: (M : Type u_1) {α : Type u_3} [Monoid M] [TopologicalSpace α] [MulAction M α] [MulAction.IsMinimal M α] (x : α)
Goal: Dense (MulAction.orbit M x)
-- AddAction.dense_orbit
@[to_additive]
theorem MulAction.dense_orbit [IsMinimal M α] (x : α) : Dense (orbit M x) 
Arguments: (M : Type u_1) {α : Type u_3} [AddMonoid M] [TopologicalSpace α] [AddAction M α] [AddAction.IsMinimal M α] (x : α)
Goal: Dense (AddAction.orbit M x)