ruc-ai4math/mathlib_handler_benchmark_410 huggingface dataset:
-- SymplecticGroup.mem_iff
theorem mem_iff {A : Matrix (l ⊕ l) (l ⊕ l) R} :
    A ∈ symplecticGroup l R ↔ A * J l R * Aᵀ = J l R 
Arguments: {l : Type u_1} {R : Type u_2} [DecidableEq l] [Fintype l] [CommRing R] {A : Matrix (l ⊕ l) (l ⊕ l) R}
Goal: A ∈ Matrix.symplecticGroup l R ↔ A * Matrix.J l R * Aᵀ = Matrix.J l R
-- SymplecticGroup.J_mem
theorem J_mem : J l R ∈ symplecticGroup l R 
Arguments: (l : Type u_1) (R : Type u_2) [DecidableEq l] [Fintype l] [CommRing R]
Goal: Matrix.J l R ∈ Matrix.symplecticGroup l R
-- SymplecticGroup.coe_J
@[simp]
theorem coe_J : ↑(symJ l R) = J l R 
Arguments: {l : Type u_1} {R : Type u_2} [DecidableEq l] [Fintype l] [CommRing R]
Goal: ↑(SymplecticGroup.symJ l R) = Matrix.J l R
-- SymplecticGroup.neg_mem
theorem neg_mem (h : A ∈ symplecticGroup l R) : -A ∈ symplecticGroup l R 
Arguments: {l : Type u_1} {R : Type u_2} [DecidableEq l] [Fintype l] [CommRing R] {A : Matrix (l ⊕ l) (l ⊕ l) R} (h : A ∈ Matrix.symplecticGroup l R)
Goal: -A ∈ Matrix.symplecticGroup l R
-- SymplecticGroup.symplectic_det
theorem symplectic_det (hA : A ∈ symplecticGroup l R) : IsUnit <| det A 
Arguments: {l : Type u_1} {R : Type u_2} [DecidableEq l] [Fintype l] [CommRing R] {A : Matrix (l ⊕ l) (l ⊕ l) R} (hA : A ∈ Matrix.symplecticGroup l R)
Goal: IsUnit A.det
-- SymplecticGroup.transpose_mem
theorem transpose_mem (hA : A ∈ symplecticGroup l R) : Aᵀ ∈ symplecticGroup l R 
Arguments: {l : Type u_1} {R : Type u_2} [DecidableEq l] [Fintype l] [CommRing R] {A : Matrix (l ⊕ l) (l ⊕ l) R} (hA : A ∈ Matrix.symplecticGroup l R)
Goal: Aᵀ ∈ Matrix.symplecticGroup l R
-- SymplecticGroup.transpose_mem_iff
@[simp]
theorem transpose_mem_iff : Aᵀ ∈ symplecticGroup l R ↔ A ∈ symplecticGroup l R 
Arguments: {l : Type u_1} {R : Type u_2} [DecidableEq l] [Fintype l] [CommRing R] {A : Matrix (l ⊕ l) (l ⊕ l) R}
Goal: Aᵀ ∈ Matrix.symplecticGroup l R ↔ A ∈ Matrix.symplecticGroup l R
-- SymplecticGroup.mem_iff'
theorem mem_iff' : A ∈ symplecticGroup l R ↔ Aᵀ * J l R * A = J l R 
Arguments: {l : Type u_1} {R : Type u_2} [DecidableEq l] [Fintype l] [CommRing R] {A : Matrix (l ⊕ l) (l ⊕ l) R}
Goal: A ∈ Matrix.symplecticGroup l R ↔ Aᵀ * Matrix.J l R * A = Matrix.J l R
-- SymplecticGroup.coe_inv
theorem coe_inv (A : symplecticGroup l R) : (↑A⁻¹ : Matrix _ _ _) = (-J l R) * (↑A)ᵀ * J l R 
Arguments: {l : Type u_1} {R : Type u_2} [DecidableEq l] [Fintype l] [CommRing R] (A : ↥(Matrix.symplecticGroup l R))
Goal: ↑A⁻¹ = -Matrix.J l R * (↑A)ᵀ * Matrix.J l R
-- SymplecticGroup.inv_left_mul_aux
theorem inv_left_mul_aux (hA : A ∈ symplecticGroup l R) : -(J l R * Aᵀ * J l R * A) = 1 
Arguments: {l : Type u_1} {R : Type u_2} [DecidableEq l] [Fintype l] [CommRing R] {A : Matrix (l ⊕ l) (l ⊕ l) R} (hA : A ∈ Matrix.symplecticGroup l R)
Goal: -(Matrix.J l R * Aᵀ * Matrix.J l R * A) = 1
-- SymplecticGroup.coe_inv'
theorem coe_inv' (A : symplecticGroup l R) : (↑A⁻¹ : Matrix (l ⊕ l) (l ⊕ l) R) = (↑A)⁻¹ 
Arguments: {l : Type u_1} {R : Type u_2} [DecidableEq l] [Fintype l] [CommRing R] (A : ↥(Matrix.symplecticGroup l R))
Goal: ↑A⁻¹ = (↑A)⁻¹
-- SymplecticGroup.inv_eq_symplectic_inv
theorem inv_eq_symplectic_inv (A : Matrix (l ⊕ l) (l ⊕ l) R) (hA : A ∈ symplecticGroup l R) :
    A⁻¹ = (-J l R) * Aᵀ * J l R 
Arguments: {l : Type u_1} {R : Type u_2} [DecidableEq l] [Fintype l] [CommRing R] (A : Matrix (l ⊕ l) (l ⊕ l) R) (hA : A ∈ Matrix.symplecticGroup l R)
Goal: A⁻¹ = -Matrix.J l R * Aᵀ * Matrix.J l R
-- FractionalIdeal.inv_eq
theorem inv_eq : I⁻¹ = 1 / I 
Arguments: (K : Type u_3) [Field K] {R₁ : Type u_4} [CommRing R₁] [IsDomain R₁] [Algebra R₁ K] [IsFractionRing R₁ K] {I : FractionalIdeal R₁⁰ K}
Goal: I⁻¹ = 1 / I
-- FractionalIdeal.inv_zero'
theorem inv_zero' : (0 : FractionalIdeal R₁⁰ K)⁻¹ = 0 
Arguments: (K : Type u_3) [Field K] {R₁ : Type u_4} [CommRing R₁] [IsDomain R₁] [Algebra R₁ K] [IsFractionRing R₁ K]
Goal: 0⁻¹ = 0
-- FractionalIdeal.inv_nonzero
theorem inv_nonzero {J : FractionalIdeal R₁⁰ K} (h : J ≠ 0) :
    J⁻¹ = ⟨(1 : FractionalIdeal R₁⁰ K) / J, fractional_div_of_nonzero h⟩ 
Arguments: (K : Type u_3) [Field K] {R₁ : Type u_4} [CommRing R₁] [IsDomain R₁] [Algebra R₁ K] [IsFractionRing R₁ K] {J : FractionalIdeal R₁⁰ K} (h : J ≠ 0)
Goal: J⁻¹ = ⟨↑1 / ↑J, ⋯⟩
-- FractionalIdeal.coe_inv_of_nonzero
theorem coe_inv_of_nonzero {J : FractionalIdeal R₁⁰ K} (h : J ≠ 0) :
    (↑J⁻¹ : Submodule R₁ K) = IsLocalization.coeSubmodule K ⊤ / (J : Submodule R₁ K) 
Arguments: (K : Type u_3) [Field K] {R₁ : Type u_4} [CommRing R₁] [IsDomain R₁] [Algebra R₁ K] [IsFractionRing R₁ K] {J : FractionalIdeal R₁⁰ K} (h : J ≠ 0)
Goal: ↑J⁻¹ = IsLocalization.coeSubmodule K ⊤ / ↑J
-- FractionalIdeal.mem_inv_iff
theorem mem_inv_iff (hI : I ≠ 0) {x : K} : x ∈ I⁻¹ ↔ ∀ y ∈ I, x * y ∈ (1 : FractionalIdeal R₁⁰ K) 
Arguments: {K : Type u_3} [Field K] {R₁ : Type u_4} [CommRing R₁] [IsDomain R₁] [Algebra R₁ K] [IsFractionRing R₁ K] {I : FractionalIdeal R₁⁰ K} (hI : I ≠ 0) {x : K}
Goal: x ∈ I⁻¹ ↔ ∀ y ∈ I, x * y ∈ 1
-- FractionalIdeal.inv_anti_mono
theorem inv_anti_mono (hI : I ≠ 0) (hJ : J ≠ 0) (hIJ : I ≤ J) : J⁻¹ ≤ I⁻¹ 
Arguments: {K : Type u_3} [Field K] {R₁ : Type u_4} [CommRing R₁] [IsDomain R₁] [Algebra R₁ K] [IsFractionRing R₁ K] {I J : FractionalIdeal R₁⁰ K} (hI : I ≠ 0) (hJ : J ≠ 0) (hIJ : I ≤ J)
Goal: J⁻¹ ≤ I⁻¹
-- FractionalIdeal.le_self_mul_inv
theorem le_self_mul_inv {I : FractionalIdeal R₁⁰ K} (hI : I ≤ (1 : FractionalIdeal R₁⁰ K)) :
    I ≤ I * I⁻¹ 
Arguments: {K : Type u_3} [Field K] {R₁ : Type u_4} [CommRing R₁] [IsDomain R₁] [Algebra R₁ K] [IsFractionRing R₁ K] {I : FractionalIdeal R₁⁰ K} (hI : I ≤ 1)
Goal: I ≤ I * I⁻¹
-- FractionalIdeal.coe_ideal_le_self_mul_inv
theorem coe_ideal_le_self_mul_inv (I : Ideal R₁) :
    (I : FractionalIdeal R₁⁰ K) ≤ I * (I : FractionalIdeal R₁⁰ K)⁻¹ 
Arguments: (K : Type u_3) [Field K] {R₁ : Type u_4} [CommRing R₁] [IsDomain R₁] [Algebra R₁ K] [IsFractionRing R₁ K] (I : Ideal R₁)
Goal: ↑I ≤ ↑I * (↑I)⁻¹
-- FractionalIdeal.right_inverse_eq
theorem right_inverse_eq (I J : FractionalIdeal R₁⁰ K) (h : I * J = 1) : J = I⁻¹ 
Arguments: (K : Type u_3) [Field K] {R₁ : Type u_4} [CommRing R₁] [IsDomain R₁] [Algebra R₁ K] [IsFractionRing R₁ K] (I J : FractionalIdeal R₁⁰ K) (h : I * J = 1)
Goal: J = I⁻¹
-- FractionalIdeal.mul_inv_cancel_iff
theorem mul_inv_cancel_iff {I : FractionalIdeal R₁⁰ K} : I * I⁻¹ = 1 ↔ ∃ J, I * J = 1 
Arguments: (K : Type u_3) [Field K] {R₁ : Type u_4} [CommRing R₁] [IsDomain R₁] [Algebra R₁ K] [IsFractionRing R₁ K] {I : FractionalIdeal R₁⁰ K}
Goal: I * I⁻¹ = 1 ↔ ∃ J, I * J = 1
-- FractionalIdeal.mul_inv_cancel_iff_isUnit
theorem mul_inv_cancel_iff_isUnit {I : FractionalIdeal R₁⁰ K} : I * I⁻¹ = 1 ↔ IsUnit I 
Arguments: (K : Type u_3) [Field K] {R₁ : Type u_4} [CommRing R₁] [IsDomain R₁] [Algebra R₁ K] [IsFractionRing R₁ K] {I : FractionalIdeal R₁⁰ K}
Goal: I * I⁻¹ = 1 ↔ IsUnit I
-- FractionalIdeal.map_inv
@[simp]
theorem map_inv (I : FractionalIdeal R₁⁰ K) (h : K ≃ₐ[R₁] K') :
    I⁻¹.map (h : K →ₐ[R₁] K') = (I.map h)⁻¹ 
Arguments: (K : Type u_3) [Field K] {R₁ : Type u_4} [CommRing R₁] [IsDomain R₁] [Algebra R₁ K] [IsFractionRing R₁ K] {K' : Type u_5} [Field K'] [Algebra R₁ K'] [IsFractionRing R₁ K'] (I : FractionalIdeal R₁⁰ K) (h : K ≃ₐ[R₁] K')
Goal: FractionalIdeal.map (↑h) I⁻¹ = (FractionalIdeal.map (↑h) I)⁻¹
-- FractionalIdeal.spanSingleton_inv
@[simp]
theorem spanSingleton_inv (x : K) : (spanSingleton R₁⁰ x)⁻¹ = spanSingleton _ x⁻¹ 
Arguments: (K : Type u_3) [Field K] {R₁ : Type u_4} [CommRing R₁] [IsDomain R₁] [Algebra R₁ K] [IsFractionRing R₁ K] (x : K)
Goal: (FractionalIdeal.spanSingleton R₁⁰ x)⁻¹ = FractionalIdeal.spanSingleton R₁⁰ x⁻¹
-- FractionalIdeal.spanSingleton_div_spanSingleton
theorem spanSingleton_div_spanSingleton (x y : K) :
    spanSingleton R₁⁰ x / spanSingleton R₁⁰ y = spanSingleton R₁⁰ (x / y) 
Arguments: (K : Type u_3) [Field K] {R₁ : Type u_4} [CommRing R₁] [IsDomain R₁] [Algebra R₁ K] [IsFractionRing R₁ K] (x y : K)
Goal: FractionalIdeal.spanSingleton R₁⁰ x / FractionalIdeal.spanSingleton R₁⁰ y = FractionalIdeal.spanSingleton R₁⁰ (x / y)
-- FractionalIdeal.spanSingleton_div_self
theorem spanSingleton_div_self {x : K} (hx : x ≠ 0) :
    spanSingleton R₁⁰ x / spanSingleton R₁⁰ x = 1 
Arguments: (K : Type u_3) [Field K] {R₁ : Type u_4} [CommRing R₁] [IsDomain R₁] [Algebra R₁ K] [IsFractionRing R₁ K] {x : K} (hx : x ≠ 0)
Goal: FractionalIdeal.spanSingleton R₁⁰ x / FractionalIdeal.spanSingleton R₁⁰ x = 1
-- FractionalIdeal.coe_ideal_span_singleton_div_self
theorem coe_ideal_span_singleton_div_self {x : R₁} (hx : x ≠ 0) :
    (Ideal.span ({x} : Set R₁) : FractionalIdeal R₁⁰ K) / Ideal.span ({x} : Set R₁) = 1 
Arguments: (K : Type u_3) [Field K] {R₁ : Type u_4} [CommRing R₁] [IsDomain R₁] [Algebra R₁ K] [IsFractionRing R₁ K] {x : R₁} (hx : x ≠ 0)
Goal: ↑(Ideal.span {x}) / ↑(Ideal.span {x}) = 1
-- FractionalIdeal.spanSingleton_mul_inv
theorem spanSingleton_mul_inv {x : K} (hx : x ≠ 0) :
    spanSingleton R₁⁰ x * (spanSingleton R₁⁰ x)⁻¹ = 1 
Arguments: (K : Type u_3) [Field K] {R₁ : Type u_4} [CommRing R₁] [IsDomain R₁] [Algebra R₁ K] [IsFractionRing R₁ K] {x : K} (hx : x ≠ 0)
Goal: FractionalIdeal.spanSingleton R₁⁰ x * (FractionalIdeal.spanSingleton R₁⁰ x)⁻¹ = 1
-- FractionalIdeal.coe_ideal_span_singleton_mul_inv
theorem coe_ideal_span_singleton_mul_inv {x : R₁} (hx : x ≠ 0) :
    (Ideal.span ({x} : Set R₁) : FractionalIdeal R₁⁰ K) *
    (Ideal.span ({x} : Set R₁) : FractionalIdeal R₁⁰ K)⁻¹ = 1 
Arguments: (K : Type u_3) [Field K] {R₁ : Type u_4} [CommRing R₁] [IsDomain R₁] [Algebra R₁ K] [IsFractionRing R₁ K] {x : R₁} (hx : x ≠ 0)
Goal: ↑(Ideal.span {x}) * (↑(Ideal.span {x}))⁻¹ = 1
-- FractionalIdeal.spanSingleton_inv_mul
theorem spanSingleton_inv_mul {x : K} (hx : x ≠ 0) :
    (spanSingleton R₁⁰ x)⁻¹ * spanSingleton R₁⁰ x = 1 
Arguments: (K : Type u_3) [Field K] {R₁ : Type u_4} [CommRing R₁] [IsDomain R₁] [Algebra R₁ K] [IsFractionRing R₁ K] {x : K} (hx : x ≠ 0)
Goal: (FractionalIdeal.spanSingleton R₁⁰ x)⁻¹ * FractionalIdeal.spanSingleton R₁⁰ x = 1
-- FractionalIdeal.coe_ideal_span_singleton_inv_mul
theorem coe_ideal_span_singleton_inv_mul {x : R₁} (hx : x ≠ 0) :
    (Ideal.span ({x} : Set R₁) : FractionalIdeal R₁⁰ K)⁻¹ * Ideal.span ({x} : Set R₁) = 1 
Arguments: (K : Type u_3) [Field K] {R₁ : Type u_4} [CommRing R₁] [IsDomain R₁] [Algebra R₁ K] [IsFractionRing R₁ K] {x : R₁} (hx : x ≠ 0)
Goal: (↑(Ideal.span {x}))⁻¹ * ↑(Ideal.span {x}) = 1
-- FractionalIdeal.mul_generator_self_inv
theorem mul_generator_self_inv {R₁ : Type*} [CommRing R₁] [Algebra R₁ K] [IsLocalization R₁⁰ K]
    (I : FractionalIdeal R₁⁰ K) [Submodule.IsPrincipal (I : Submodule R₁ K)] (h : I ≠ 0) :
    I * spanSingleton _ (generator (I : Submodule R₁ K))⁻¹ = 1 
Arguments: (K : Type u_3) [Field K] {R₁ : Type u_6} [CommRing R₁] [Algebra R₁ K] [IsLocalization R₁⁰ K] (I : FractionalIdeal R₁⁰ K) [(↑I).IsPrincipal] (h : I ≠ 0)
Goal: I * FractionalIdeal.spanSingleton R₁⁰ (Submodule.IsPrincipal.generator ↑I)⁻¹ = 1
-- FractionalIdeal.invertible_of_principal
theorem invertible_of_principal (I : FractionalIdeal R₁⁰ K)
    [Submodule.IsPrincipal (I : Submodule R₁ K)] (h : I ≠ 0) : I * I⁻¹ = 1 
Arguments: (K : Type u_3) [Field K] {R₁ : Type u_4} [CommRing R₁] [IsDomain R₁] [Algebra R₁ K] [IsFractionRing R₁ K] (I : FractionalIdeal R₁⁰ K) [(↑I).IsPrincipal] (h : I ≠ 0)
Goal: I * I⁻¹ = 1
-- FractionalIdeal.invertible_iff_generator_nonzero
theorem invertible_iff_generator_nonzero (I : FractionalIdeal R₁⁰ K)
    [Submodule.IsPrincipal (I : Submodule R₁ K)] :
    I * I⁻¹ = 1 ↔ generator (I : Submodule R₁ K) ≠ 0 
Arguments: (K : Type u_3) [Field K] {R₁ : Type u_4} [CommRing R₁] [IsDomain R₁] [Algebra R₁ K] [IsFractionRing R₁ K] (I : FractionalIdeal R₁⁰ K) [(↑I).IsPrincipal]
Goal: I * I⁻¹ = 1 ↔ Submodule.IsPrincipal.generator ↑I ≠ 0
-- FractionalIdeal.isPrincipal_inv
theorem isPrincipal_inv (I : FractionalIdeal R₁⁰ K) [Submodule.IsPrincipal (I : Submodule R₁ K)]
    (h : I ≠ 0) : Submodule.IsPrincipal I⁻¹.1 
Arguments: (K : Type u_3) [Field K] {R₁ : Type u_4} [CommRing R₁] [IsDomain R₁] [Algebra R₁ K] [IsFractionRing R₁ K] (I : FractionalIdeal R₁⁰ K) [(↑I).IsPrincipal] (h : I ≠ 0)
Goal: (↑I⁻¹).IsPrincipal
-- FractionalIdeal.den_mem_inv
lemma den_mem_inv {I : FractionalIdeal R₁⁰ K} (hI : I ≠ ⊥) :
    (algebraMap R₁ K) (I.den : R₁) ∈ I⁻¹ 
Arguments: {K : Type u_3} [Field K] {R₁ : Type u_4} [CommRing R₁] [IsDomain R₁] [Algebra R₁ K] [IsFractionRing R₁ K] {I : FractionalIdeal R₁⁰ K} (hI : I ≠ ⊥)
Goal: (algebraMap R₁ K) ↑I.den ∈ I⁻¹
-- FractionalIdeal.num_le_mul_inv
lemma num_le_mul_inv (I : FractionalIdeal R₁⁰ K) : I.num ≤ I * I⁻¹ 
Arguments: {K : Type u_3} [Field K] {R₁ : Type u_4} [CommRing R₁] [IsDomain R₁] [Algebra R₁ K] [IsFractionRing R₁ K] (I : FractionalIdeal R₁⁰ K)
Goal: ↑I.num ≤ I * I⁻¹
-- FractionalIdeal.bot_lt_mul_inv
lemma bot_lt_mul_inv {I : FractionalIdeal R₁⁰ K} (hI : I ≠ ⊥) : ⊥ < I * I⁻¹ 
Arguments: {K : Type u_3} [Field K] {R₁ : Type u_4} [CommRing R₁] [IsDomain R₁] [Algebra R₁ K] [IsFractionRing R₁ K] {I : FractionalIdeal R₁⁰ K} (hI : I ≠ ⊥)
Goal: ⊥ < I * I⁻¹
-- isDedekindDomainInv_iff
theorem isDedekindDomainInv_iff [Algebra A K] [IsFractionRing A K] :
    IsDedekindDomainInv A ↔ ∀ I ≠ (⊥ : FractionalIdeal A⁰ K), I * I⁻¹ = 1 
Arguments: {A : Type u_2} {K : Type u_3} [CommRing A] [Field K] [IsDomain A] [Algebra A K] [IsFractionRing A K]
Goal: IsDedekindDomainInv A ↔ ∀ (I : FractionalIdeal A⁰ K), I ≠ ⊥ → I * I⁻¹ = 1
-- FractionalIdeal.adjoinIntegral_eq_one_of_isUnit
theorem FractionalIdeal.adjoinIntegral_eq_one_of_isUnit [Algebra A K] [IsFractionRing A K] (x : K)
    (hx : IsIntegral A x) (hI : IsUnit (adjoinIntegral A⁰ x hx)) : adjoinIntegral A⁰ x hx = 1 
Arguments: {A : Type u_2} {K : Type u_3} [CommRing A] [Field K] [IsDomain A] [Algebra A K] [IsFractionRing A K] (x : K) (hx : IsIntegral A x) (hI : IsUnit (FractionalIdeal.adjoinIntegral A⁰ x hx))
Goal: FractionalIdeal.adjoinIntegral A⁰ x hx = 1
-- IsDedekindDomainInv.mul_inv_eq_one
theorem mul_inv_eq_one {I : FractionalIdeal A⁰ K} (hI : I ≠ 0) : I * I⁻¹ = 1 
Arguments: {A : Type u_2} {K : Type u_3} [CommRing A] [Field K] [IsDomain A] [Algebra A K] [IsFractionRing A K] (h : IsDedekindDomainInv A) {I : FractionalIdeal A⁰ K} (hI : I ≠ 0)
Goal: I * I⁻¹ = 1
-- IsDedekindDomainInv.inv_mul_eq_one
theorem inv_mul_eq_one {I : FractionalIdeal A⁰ K} (hI : I ≠ 0) : I⁻¹ * I = 1 
Arguments: {A : Type u_2} {K : Type u_3} [CommRing A] [Field K] [IsDomain A] [Algebra A K] [IsFractionRing A K] (h : IsDedekindDomainInv A) {I : FractionalIdeal A⁰ K} (hI : I ≠ 0)
Goal: I⁻¹ * I = 1
-- IsDedekindDomainInv.isUnit
protected theorem isUnit {I : FractionalIdeal A⁰ K} (hI : I ≠ 0) : IsUnit I 
Arguments: {A : Type u_2} {K : Type u_3} [CommRing A] [Field K] [IsDomain A] [Algebra A K] [IsFractionRing A K] (h : IsDedekindDomainInv A) {I : FractionalIdeal A⁰ K} (hI : I ≠ 0)
Goal: IsUnit I
-- IsDedekindDomainInv.isNoetherianRing
theorem isNoetherianRing : IsNoetherianRing A 
Arguments: {A : Type u_2} [CommRing A] [IsDomain A] (h : IsDedekindDomainInv A)
Goal: IsNoetherianRing A
-- IsDedekindDomainInv.integrallyClosed
theorem integrallyClosed : IsIntegrallyClosed A 
Arguments: {A : Type u_2} [CommRing A] [IsDomain A] (h : IsDedekindDomainInv A)
Goal: IsIntegrallyClosed A
-- IsDedekindDomainInv.dimensionLEOne
theorem dimensionLEOne : DimensionLEOne A 
Arguments: {A : Type u_2} [CommRing A] [IsDomain A] (h : IsDedekindDomainInv A)
Goal: Ring.DimensionLEOne A
-- IsDedekindDomainInv.isDedekindDomain
theorem isDedekindDomain : IsDedekindDomain A 
Arguments: {A : Type u_2} [CommRing A] [IsDomain A] (h : IsDedekindDomainInv A)
Goal: IsDedekindDomain A
-- one_mem_inv_coe_ideal
theorem one_mem_inv_coe_ideal [IsDomain A] {I : Ideal A} (hI : I ≠ ⊥) :
    (1 : K) ∈ (I : FractionalIdeal A⁰ K)⁻¹ 
Arguments: {A : Type u_2} {K : Type u_3} [CommRing A] [Field K] [Algebra A K] [IsFractionRing A K] [IsDomain A] {I : Ideal A} (hI : I ≠ ⊥)
Goal: 1 ∈ (↑I)⁻¹
-- exists_multiset_prod_cons_le_and_prod_not_le
theorem exists_multiset_prod_cons_le_and_prod_not_le [IsDedekindDomain A] (hNF : ¬IsField A)
    {I M : Ideal A} (hI0 : I ≠ ⊥) (hIM : I ≤ M) [hM : M.IsMaximal] :
    ∃ Z : Multiset (PrimeSpectrum A),
      (M ::ₘ Z.map PrimeSpectrum.asIdeal).prod ≤ I ∧
        ¬Multiset.prod (Z.map PrimeSpectrum.asIdeal) ≤ I 
Arguments: {A : Type u_2} [CommRing A] [IsDedekindDomain A] (hNF : ¬IsField A) {I M : Ideal A} (hI0 : I ≠ ⊥) (hIM : I ≤ M) [hM : M.IsMaximal]
Goal: ∃ Z, (M ::ₘ Multiset.map PrimeSpectrum.asIdeal Z).prod ≤ I ∧ ¬(Multiset.map PrimeSpectrum.asIdeal Z).prod ≤ I
-- FractionalIdeal.not_inv_le_one_of_ne_bot
lemma not_inv_le_one_of_ne_bot [IsDedekindDomain A] {I : Ideal A}
    (hI0 : I ≠ ⊥) (hI1 : I ≠ ⊤) : ¬(I⁻¹ : FractionalIdeal A⁰ K) ≤ 1 
Arguments: {A : Type u_2} {K : Type u_3} [CommRing A] [Field K] [Algebra A K] [IsFractionRing A K] [IsDedekindDomain A] {I : Ideal A} (hI0 : I ≠ ⊥) (hI1 : I ≠ ⊤)
Goal: ¬(↑I)⁻¹ ≤ 1
-- FractionalIdeal.exists_not_mem_one_of_ne_bot
theorem exists_not_mem_one_of_ne_bot [IsDedekindDomain A] {I : Ideal A} (hI0 : I ≠ ⊥)
    (hI1 : I ≠ ⊤) : ∃ x ∈ (I⁻¹ : FractionalIdeal A⁰ K), x ∉ (1 : FractionalIdeal A⁰ K) 
Arguments: {A : Type u_2} {K : Type u_3} [CommRing A] [Field K] [Algebra A K] [IsFractionRing A K] [IsDedekindDomain A] {I : Ideal A} (hI0 : I ≠ ⊥) (hI1 : I ≠ ⊤)
Goal: ∃ x ∈ (↑I)⁻¹, x ∉ 1
-- FractionalIdeal.mul_inv_cancel_of_le_one
theorem mul_inv_cancel_of_le_one [h : IsDedekindDomain A] {I : Ideal A} (hI0 : I ≠ ⊥)
    (hI : (I * (I : FractionalIdeal A⁰ K)⁻¹)⁻¹ ≤ 1) : I * (I : FractionalIdeal A⁰ K)⁻¹ = 1 
Arguments: {A : Type u_2} {K : Type u_3} [CommRing A] [Field K] [Algebra A K] [IsFractionRing A K] [h : IsDedekindDomain A] {I : Ideal A} (hI0 : I ≠ ⊥) (hI : (↑I * (↑I)⁻¹)⁻¹ ≤ 1)
Goal: ↑I * (↑I)⁻¹ = 1
-- FractionalIdeal.coe_ideal_mul_inv
theorem coe_ideal_mul_inv [h : IsDedekindDomain A] (I : Ideal A) (hI0 : I ≠ ⊥) :
    I * (I : FractionalIdeal A⁰ K)⁻¹ = 1 
Arguments: {A : Type u_2} {K : Type u_3} [CommRing A] [Field K] [Algebra A K] [IsFractionRing A K] [h : IsDedekindDomain A] (I : Ideal A) (hI0 : I ≠ ⊥)
Goal: ↑I * (↑I)⁻¹ = 1
-- FractionalIdeal.mul_inv_cancel
protected theorem mul_inv_cancel [IsDedekindDomain A] {I : FractionalIdeal A⁰ K} (hne : I ≠ 0) :
    I * I⁻¹ = 1 
Arguments: {A : Type u_2} {K : Type u_3} [CommRing A] [Field K] [Algebra A K] [IsFractionRing A K] [IsDedekindDomain A] {I : FractionalIdeal A⁰ K} (hne : I ≠ 0)
Goal: I * I⁻¹ = 1
-- FractionalIdeal.mul_right_le_iff
theorem mul_right_le_iff [IsDedekindDomain A] {J : FractionalIdeal A⁰ K} (hJ : J ≠ 0) :
    ∀ {I I'}, I * J ≤ I' * J ↔ I ≤ I' 
Arguments: {A : Type u_2} {K : Type u_3} [CommRing A] [Field K] [Algebra A K] [IsFractionRing A K] [IsDedekindDomain A] {J : FractionalIdeal A⁰ K} (hJ : J ≠ 0) {I I' : FractionalIdeal A⁰ K}
Goal: I * J ≤ I' * J ↔ I ≤ I'
-- FractionalIdeal.mul_left_le_iff
theorem mul_left_le_iff [IsDedekindDomain A] {J : FractionalIdeal A⁰ K} (hJ : J ≠ 0) {I I'} :
    J * I ≤ J * I' ↔ I ≤ I' 
Arguments: {A : Type u_2} {K : Type u_3} [CommRing A] [Field K] [Algebra A K] [IsFractionRing A K] [IsDedekindDomain A] {J : FractionalIdeal A⁰ K} (hJ : J ≠ 0) {I I' : FractionalIdeal A⁰ K}
Goal: J * I ≤ J * I' ↔ I ≤ I'
-- FractionalIdeal.mul_right_strictMono
theorem mul_right_strictMono [IsDedekindDomain A] {I : FractionalIdeal A⁰ K} (hI : I ≠ 0) :
    StrictMono (· * I) 
Arguments: {A : Type u_2} {K : Type u_3} [CommRing A] [Field K] [Algebra A K] [IsFractionRing A K] [IsDedekindDomain A] {I : FractionalIdeal A⁰ K} (hI : I ≠ 0)
Goal: StrictMono fun x => x * I
-- FractionalIdeal.mul_left_strictMono
theorem mul_left_strictMono [IsDedekindDomain A] {I : FractionalIdeal A⁰ K} (hI : I ≠ 0) :
    StrictMono (I * ·) 
Arguments: {A : Type u_2} {K : Type u_3} [CommRing A] [Field K] [Algebra A K] [IsFractionRing A K] [IsDedekindDomain A] {I : FractionalIdeal A⁰ K} (hI : I ≠ 0)
Goal: StrictMono fun x => I * x
-- FractionalIdeal.div_eq_mul_inv
protected theorem div_eq_mul_inv [IsDedekindDomain A] (I J : FractionalIdeal A⁰ K) :
    I / J = I * J⁻¹ 
Arguments: {A : Type u_2} {K : Type u_3} [CommRing A] [Field K] [Algebra A K] [IsFractionRing A K] [IsDedekindDomain A] (I J : FractionalIdeal A⁰ K)
Goal: I / J = I * J⁻¹
-- isDedekindDomain_iff_isDedekindDomainInv
theorem isDedekindDomain_iff_isDedekindDomainInv [IsDomain A] :
    IsDedekindDomain A ↔ IsDedekindDomainInv A 
Arguments: {A : Type u_2} [CommRing A] [IsDomain A]
Goal: IsDedekindDomain A ↔ IsDedekindDomainInv A
-- Ideal.dvd_iff_le
theorem Ideal.dvd_iff_le {I J : Ideal A} : I ∣ J ↔ J ≤ I 
Arguments: {A : Type u_2} [CommRing A] [IsDedekindDomain A] {I J : Ideal A}
Goal: I ∣ J ↔ J ≤ I
-- Ideal.dvdNotUnit_iff_lt
theorem Ideal.dvdNotUnit_iff_lt {I J : Ideal A} : DvdNotUnit I J ↔ J < I 
Arguments: {A : Type u_2} [CommRing A] [IsDedekindDomain A] {I J : Ideal A}
Goal: DvdNotUnit I J ↔ J < I
-- Ideal.dvd_span_singleton
@[simp]
theorem Ideal.dvd_span_singleton {I : Ideal A} {x : A} : I ∣ Ideal.span {x} ↔ x ∈ I 
Arguments: {A : Type u_2} [CommRing A] [IsDedekindDomain A] {I : Ideal A} {x : A}
Goal: I ∣ Ideal.span {x} ↔ x ∈ I
-- Ideal.isPrime_of_prime
theorem Ideal.isPrime_of_prime {P : Ideal A} (h : Prime P) : IsPrime P 
Arguments: {A : Type u_2} [CommRing A] [IsDedekindDomain A] {P : Ideal A} (h : Prime P)
Goal: P.IsPrime
-- Ideal.prime_of_isPrime
theorem Ideal.prime_of_isPrime {P : Ideal A} (hP : P ≠ ⊥) (h : IsPrime P) : Prime P 
Arguments: {A : Type u_2} [CommRing A] [IsDedekindDomain A] {P : Ideal A} (hP : P ≠ ⊥) (h : P.IsPrime)
Goal: Prime P
-- Ideal.prime_iff_isPrime
theorem Ideal.prime_iff_isPrime {P : Ideal A} (hP : P ≠ ⊥) : Prime P ↔ IsPrime P 
Arguments: {A : Type u_2} [CommRing A] [IsDedekindDomain A] {P : Ideal A} (hP : P ≠ ⊥)
Goal: Prime P ↔ P.IsPrime
-- Ideal.isPrime_iff_bot_or_prime
theorem Ideal.isPrime_iff_bot_or_prime {P : Ideal A} : IsPrime P ↔ P = ⊥ ∨ Prime P 
Arguments: {A : Type u_2} [CommRing A] [IsDedekindDomain A] {P : Ideal A}
Goal: P.IsPrime ↔ P = ⊥ ∨ Prime P
-- Ideal.prime_span_singleton_iff
@[simp]
theorem Ideal.prime_span_singleton_iff {a : A} : Prime (Ideal.span {a}) ↔ Prime a 
Arguments: {A : Type u_2} [CommRing A] [IsDedekindDomain A] {a : A}
Goal: Prime (Ideal.span {a}) ↔ Prime a
-- Ideal.prime_generator_of_prime
theorem Ideal.prime_generator_of_prime {P : Ideal A} (h : Prime P) [P.IsPrincipal] :
    Prime (generator P) 
Arguments: {A : Type u_2} [CommRing A] [IsDedekindDomain A] {P : Ideal A} (h : Prime P) [Submodule.IsPrincipal P]
Goal: Prime (Submodule.IsPrincipal.generator P)
-- Ideal.mem_normalizedFactors_iff
nonrec theorem Ideal.mem_normalizedFactors_iff {p I : Ideal A} (hI : I ≠ ⊥) :
    p ∈ normalizedFactors I ↔ p.IsPrime ∧ I ≤ p 
Arguments: {A : Type u_2} [CommRing A] [IsDedekindDomain A] {p I : Ideal A} (hI : I ≠ ⊥)
Goal: p ∈ UniqueFactorizationMonoid.normalizedFactors I ↔ p.IsPrime ∧ I ≤ p
-- Ideal.pow_right_strictAnti
theorem Ideal.pow_right_strictAnti (I : Ideal A) (hI0 : I ≠ ⊥) (hI1 : I ≠ ⊤) :
    StrictAnti (I ^ · : ℕ → Ideal A) 
Arguments: {A : Type u_2} [CommRing A] [IsDedekindDomain A] (I : Ideal A) (hI0 : I ≠ ⊥) (hI1 : I ≠ ⊤)
Goal: StrictAnti fun x => I ^ x
-- Ideal.pow_lt_self
theorem Ideal.pow_lt_self (I : Ideal A) (hI0 : I ≠ ⊥) (hI1 : I ≠ ⊤) (e : ℕ) (he : 2 ≤ e) :
    I ^ e < I 
Arguments: {A : Type u_2} [CommRing A] [IsDedekindDomain A] (I : Ideal A) (hI0 : I ≠ ⊥) (hI1 : I ≠ ⊤) (e : ℕ) (he : 2 ≤ e)
Goal: I ^ e < I
-- Ideal.exists_mem_pow_not_mem_pow_succ
theorem Ideal.exists_mem_pow_not_mem_pow_succ (I : Ideal A) (hI0 : I ≠ ⊥) (hI1 : I ≠ ⊤) (e : ℕ) :
    ∃ x ∈ I ^ e, x ∉ I ^ (e + 1) 
Arguments: {A : Type u_2} [CommRing A] [IsDedekindDomain A] (I : Ideal A) (hI0 : I ≠ ⊥) (hI1 : I ≠ ⊤) (e : ℕ)
Goal: ∃ x ∈ I ^ e, x ∉ I ^ (e + 1)
-- Ideal.eq_prime_pow_of_succ_lt_of_le
theorem Ideal.eq_prime_pow_of_succ_lt_of_le {P I : Ideal A} [P_prime : P.IsPrime] (hP : P ≠ ⊥)
    {i : ℕ} (hlt : P ^ (i + 1) < I) (hle : I ≤ P ^ i) : I = P ^ i 
Arguments: {A : Type u_2} [CommRing A] [IsDedekindDomain A] {P I : Ideal A} [P_prime : P.IsPrime] (hP : P ≠ ⊥) {i : ℕ} (hlt : P ^ (i + 1) < I) (hle : I ≤ P ^ i)
Goal: I = P ^ i
-- Ideal.pow_succ_lt_pow
theorem Ideal.pow_succ_lt_pow {P : Ideal A} [P_prime : P.IsPrime] (hP : P ≠ ⊥) (i : ℕ) :
    P ^ (i + 1) < P ^ i 
Arguments: {A : Type u_2} [CommRing A] [IsDedekindDomain A] {P : Ideal A} [P_prime : P.IsPrime] (hP : P ≠ ⊥) (i : ℕ)
Goal: P ^ (i + 1) < P ^ i