ruc-ai4math/mathlib_handler_benchmark_410 huggingface dataset:
-- IntermediateField.algHomEquivAlgHomOfSplits_apply_apply
theorem IntermediateField.algHomEquivAlgHomOfSplits_apply_apply (L : IntermediateField F A)
    (hL : ∀ x : K, (minpoly F x).Splits (algebraMap F L)) (f : K →ₐ[F] L) (x : K) :
    algHomEquivAlgHomOfSplits A L hL f x = algebraMap L A (f x) 
Arguments: {F : Type u_1} {K : Type u_2} (A : Type u_3) [Field F] [Field K] [Field A] [Algebra F K] [Algebra F A] [Algebra.IsAlgebraic F K] (L : IntermediateField F A) (hL : ∀ (x : K), Polynomial.Splits (algebraMap F ↥L) (minpoly F x)) (f : K →ₐ[F] ↥L) (x : K)
Goal: ((IntermediateField.algHomEquivAlgHomOfSplits A L hL) f) x = (algebraMap (↥L) A) (f x)
-- Algebra.IsAlgebraic.algHomEquivAlgHomOfSplits_apply_apply
theorem Algebra.IsAlgebraic.algHomEquivAlgHomOfSplits_apply_apply (L : Type*) [Field L]
    [Algebra F L] [Algebra L A] [IsScalarTower F L A]
    (hL : ∀ x : K, (minpoly F x).Splits (algebraMap F L)) (f : K →ₐ[F] L) (x : K) :
    Algebra.IsAlgebraic.algHomEquivAlgHomOfSplits A L hL f x = algebraMap L A (f x) 
Arguments: {F : Type u_1} {K : Type u_2} (A : Type u_3) [Field F] [Field K] [Field A] [Algebra F K] [Algebra F A] [Algebra.IsAlgebraic F K] (L : Type u_4) [Field L] [Algebra F L] [Algebra L A] [IsScalarTower F L A] (hL : ∀ (x : K), Polynomial.Splits (algebraMap F L) (minpoly F x)) (f : K →ₐ[F] L) (x : K)
Goal: ((Algebra.IsAlgebraic.algHomEquivAlgHomOfSplits A L hL) f) x = (algebraMap L A) (f x)
-- Polynomial.irreducible_factor
theorem irreducible_factor (f : K[X]) : Irreducible (factor f) 
Arguments: {K : Type v} [Field K] (f : K[X])
Goal: Irreducible f.factor
-- Polynomial.fact_irreducible_factor
theorem fact_irreducible_factor (f : K[X]) : Fact (Irreducible (factor f)) 
Arguments: {K : Type v} [Field K] (f : K[X])
Goal: Fact (Irreducible f.factor)
-- Polynomial.factor_dvd_of_not_isUnit
theorem factor_dvd_of_not_isUnit {f : K[X]} (hf1 : ¬IsUnit f) : factor f ∣ f 
Arguments: {K : Type v} [Field K] {f : K[X]} (hf1 : ¬IsUnit f)
Goal: f.factor ∣ f
-- Polynomial.factor_dvd_of_degree_ne_zero
theorem factor_dvd_of_degree_ne_zero {f : K[X]} (hf : f.degree ≠ 0) : factor f ∣ f 
Arguments: {K : Type v} [Field K] {f : K[X]} (hf : f.degree ≠ 0)
Goal: f.factor ∣ f
-- Polynomial.factor_dvd_of_natDegree_ne_zero
theorem factor_dvd_of_natDegree_ne_zero {f : K[X]} (hf : f.natDegree ≠ 0) : factor f ∣ f 
Arguments: {K : Type v} [Field K] {f : K[X]} (hf : f.natDegree ≠ 0)
Goal: f.factor ∣ f
-- Polynomial.isCoprime_iff_aeval_ne_zero
lemma isCoprime_iff_aeval_ne_zero (f g : K[X]) : IsCoprime f g ↔ ∀ {A : Type v} [CommRing A]
    [IsDomain A] [Algebra K A] (a : A), aeval a f ≠ 0 ∨ aeval a g ≠ 0 
Arguments: {K : Type v} [Field K] (f g : K[X])
Goal: IsCoprime f g ↔
  ∀ {A : Type v} [inst : CommRing A] [inst_1 : IsDomain A] [inst_2 : Algebra K A] (a : A),
    (Polynomial.aeval a) f ≠ 0 ∨ (Polynomial.aeval a) g ≠ 0
-- Polynomial.X_sub_C_mul_removeFactor
theorem X_sub_C_mul_removeFactor (f : K[X]) (hf : f.natDegree ≠ 0) :
    (X - C (AdjoinRoot.root f.factor)) * f.removeFactor = map (AdjoinRoot.of f.factor) f 
Arguments: {K : Type v} [Field K] (f : K[X]) (hf : f.natDegree ≠ 0)
Goal: (Polynomial.X - Polynomial.C (AdjoinRoot.root f.factor)) * f.removeFactor = Polynomial.map (AdjoinRoot.of f.factor) f
-- Polynomial.natDegree_removeFactor
theorem natDegree_removeFactor (f : K[X]) : f.removeFactor.natDegree = f.natDegree - 1 
Arguments: {K : Type v} [Field K] (f : K[X])
Goal: f.removeFactor.natDegree = f.natDegree - 1
-- Polynomial.natDegree_removeFactor'
theorem natDegree_removeFactor' {f : K[X]} {n : ℕ} (hfn : f.natDegree = n + 1) :
    f.removeFactor.natDegree = n 
Arguments: {K : Type v} [Field K] {f : K[X]} {n : ℕ} (hfn : f.natDegree = n + 1)
Goal: f.removeFactor.natDegree = n
-- Polynomial.SplittingFieldAux.succ
theorem succ (n : ℕ) (f : K[X]) :
    SplittingFieldAux (n + 1) f = SplittingFieldAux n f.removeFactor 
Arguments: {K : Type v} [Field K] (n : ℕ) (f : K[X])
Goal: Polynomial.SplittingFieldAux (n + 1) f = Polynomial.SplittingFieldAux n f.removeFactor
-- Polynomial.SplittingFieldAux.algebraMap_succ
theorem algebraMap_succ (n : ℕ) (f : K[X]) :
    algebraMap K (SplittingFieldAux (n + 1) f) =
      (algebraMap (AdjoinRoot f.factor) (SplittingFieldAux n f.removeFactor)).comp
        (AdjoinRoot.of f.factor) 
Arguments: {K : Type v} [Field K] (n : ℕ) (f : K[X])
Goal: algebraMap K (Polynomial.SplittingFieldAux (n + 1) f) =
  (algebraMap (AdjoinRoot f.factor) (Polynomial.SplittingFieldAux n f.removeFactor)).comp (AdjoinRoot.of f.factor)
-- Polynomial.SplittingFieldAux.splits
protected theorem splits (n : ℕ) :
    ∀ {K : Type u} [Field K],
      ∀ (f : K[X]) (_hfn : f.natDegree = n), Splits (algebraMap K <| SplittingFieldAux n f) f 
Arguments: (n : ℕ) {K : Type u} [Field K] (f : K[X]) (_hfn : f.natDegree = n)
Goal: Polynomial.Splits (algebraMap K (Polynomial.SplittingFieldAux n f)) f
-- Polynomial.SplittingFieldAux.adjoin_rootSet
theorem adjoin_rootSet (n : ℕ) :
    ∀ {K : Type u} [Field K],
      ∀ (f : K[X]) (_hfn : f.natDegree = n),
        Algebra.adjoin K (f.rootSet (SplittingFieldAux n f)) = ⊤ 
Arguments: (n : ℕ) {K : Type u} [Field K] (f : K[X]) (_hfn : f.natDegree = n)
Goal: Algebra.adjoin K (f.rootSet (Polynomial.SplittingFieldAux n f)) = ⊤
-- Polynomial.SplittingField.splits
protected theorem splits : Splits (algebraMap K (SplittingField f)) f 
Arguments: {K : Type v} [Field K] (f : K[X])
Goal: Polynomial.Splits (algebraMap K f.SplittingField) f
-- Polynomial.SplittingField.adjoin_rootSet
theorem adjoin_rootSet : Algebra.adjoin K (f.rootSet (SplittingField f)) = ⊤ 
Arguments: {K : Type v} [Field K] (f : K[X])
Goal: Algebra.adjoin K (f.rootSet f.SplittingField) = ⊤
-- IsNormalClosure.adjoin_rootSet
class IsNormalClosure : Prop where
  splits (x : K) : (minpoly F x).Splits (algebraMap F L)
  adjoin_rootSet : ⨆ x : K, adjoin F ((minpoly F x).rootSet L) = ⊤
Arguments: {F : Type u_1} {K : Type u_2} {L : Type u_3} [Field F] [Field K] [Field L] [Algebra F K] [Algebra F L] [self : IsNormalClosure F K L]
Goal: ⨆ x, IntermediateField.adjoin F ((minpoly F x).rootSet L) = ⊤
-- IsNormalClosure.splits
class IsNormalClosure : Prop where
  splits (x : K) : (minpoly F x).Splits (algebraMap F L)
  adjoin_rootSet : ⨆ x : K, adjoin F ((minpoly F x).rootSet L) = ⊤
Arguments: {F : Type u_1} {K : Type u_2} {L : Type u_3} [Field F] [Field K] [Field L] [Algebra F K] [Algebra F L] [self : IsNormalClosure F K L] (x : K)
Goal: Polynomial.Splits (algebraMap F L) (minpoly F x)
-- normalClosure_def
lemma normalClosure_def : normalClosure F K L = ⨆ f : K →ₐ[F] L, f.fieldRange 
Arguments: (F : Type u_1) (K : Type u_2) (L : Type u_3) [Field F] [Field K] [Field L] [Algebra F K] [Algebra F L]
Goal: normalClosure F K L = ⨆ f, f.fieldRange
-- IsNormalClosure.normal
lemma IsNormalClosure.normal [h : IsNormalClosure F K L] : Normal F L 
Arguments: {F : Type u_1} {K : Type u_2} {L : Type u_3} [Field F] [Field K] [Field L] [Algebra F K] [Algebra F L] [h : IsNormalClosure F K L]
Goal: Normal F L
-- normalClosure_le_iff
lemma normalClosure_le_iff {K' : IntermediateField F L} :
    normalClosure F K L ≤ K' ↔ ∀ f : K →ₐ[F] L, f.fieldRange ≤ K' 
Arguments: {F : Type u_1} {K : Type u_2} {L : Type u_3} [Field F] [Field K] [Field L] [Algebra F K] [Algebra F L] {K' : IntermediateField F L}
Goal: normalClosure F K L ≤ K' ↔ ∀ (f : K →ₐ[F] L), f.fieldRange ≤ K'
-- AlgHom.fieldRange_le_normalClosure
lemma AlgHom.fieldRange_le_normalClosure (f : K →ₐ[F] L) : f.fieldRange ≤ normalClosure F K L 
Arguments: {F : Type u_1} {K : Type u_2} {L : Type u_3} [Field F] [Field K] [Field L] [Algebra F K] [Algebra F L] (f : K →ₐ[F] L)
Goal: f.fieldRange ≤ normalClosure F K L
-- Algebra.IsAlgebraic.normalClosure_le_iSup_adjoin
lemma normalClosure_le_iSup_adjoin :
    normalClosure F K L ≤ ⨆ x : K, IntermediateField.adjoin F ((minpoly F x).rootSet L) 
Arguments: {F : Type u_1} {K : Type u_2} {L : Type u_3} [Field F] [Field K] [Field L] [Algebra F K] [Algebra F L] [Algebra.IsAlgebraic F K]
Goal: normalClosure F K L ≤ ⨆ x, IntermediateField.adjoin F ((minpoly F x).rootSet L)
-- Algebra.IsAlgebraic.normalClosure_eq_iSup_adjoin_of_splits
lemma normalClosure_eq_iSup_adjoin_of_splits :
    normalClosure F K L = ⨆ x : K, IntermediateField.adjoin F ((minpoly F x).rootSet L) 
Arguments: {F : Type u_1} {K : Type u_2} {L : Type u_3} [Field F] [Field K] [Field L] [Algebra F K] [Algebra F L] [Algebra.IsAlgebraic F K] (splits : ∀ (x : K), Polynomial.Splits (algebraMap F L) (minpoly F x))
Goal: normalClosure F K L = ⨆ x, IntermediateField.adjoin F ((minpoly F x).rootSet L)
-- Algebra.IsAlgebraic.isNormalClosure_iff
lemma isNormalClosure_iff : IsNormalClosure F K L ↔
    (∀ x : K, (minpoly F x).Splits (algebraMap F L)) ∧ normalClosure F K L = ⊤ 
Arguments: {F : Type u_1} {K : Type u_2} {L : Type u_3} [Field F] [Field K] [Field L] [Algebra F K] [Algebra F L] [Algebra.IsAlgebraic F K]
Goal: IsNormalClosure F K L ↔ (∀ (x : K), Polynomial.Splits (algebraMap F L) (minpoly F x)) ∧ normalClosure F K L = ⊤
-- Algebra.IsAlgebraic.isNormalClosure_normalClosure
lemma isNormalClosure_normalClosure : IsNormalClosure F K (normalClosure F K L) 
Arguments: {F : Type u_1} {K : Type u_2} {L : Type u_3} [Field F] [Field K] [Field L] [Algebra F K] [Algebra F L] [Algebra.IsAlgebraic F K] (splits : ∀ (x : K), Polynomial.Splits (algebraMap F L) (minpoly F x))
Goal: IsNormalClosure F K ↥(normalClosure F K L)
-- normalClosure_eq_iSup_adjoin'
theorem normalClosure_eq_iSup_adjoin' [ne : Nonempty (K →ₐ[F] L)] [h : Normal F L] :
    normalClosure F K L = ⨆ x : K, adjoin F ((minpoly F x).rootSet L) 
Arguments: (F : Type u_1) (K : Type u_2) (L : Type u_3) [Field F] [Field K] [Field L] [Algebra F K] [Algebra F L] [ne : Nonempty (K →ₐ[F] L)] [h : Normal F L]
Goal: normalClosure F K L = ⨆ x, IntermediateField.adjoin F ((minpoly F x).rootSet L)
-- normalClosure_eq_iSup_adjoin
theorem normalClosure_eq_iSup_adjoin [Algebra K L] [IsScalarTower F K L] [Normal F L] :
    normalClosure F K L = ⨆ x : K, adjoin F ((minpoly F x).rootSet L) 
Arguments: (F : Type u_1) (K : Type u_2) (L : Type u_3) [Field F] [Field K] [Field L] [Algebra F K] [Algebra F L] [Algebra K L] [IsScalarTower F K L] [Normal F L]
Goal: normalClosure F K L = ⨆ x, IntermediateField.adjoin F ((minpoly F x).rootSet L)
-- normalClosure.restrictScalars_eq
lemma restrictScalars_eq :
    (toAlgHom K (normalClosure F K L) L).fieldRange.restrictScalars F = normalClosure F K L 
Arguments: (F : Type u_1) (K : Type u_2) (L : Type u_3) [Field F] [Field K] [Field L] [Algebra F K] [Algebra F L] [Algebra K L] [IsScalarTower F K L]
Goal: IntermediateField.restrictScalars F (IsScalarTower.toAlgHom K (↥(normalClosure F K L)) L).fieldRange =
  normalClosure F K L
-- IntermediateField.le_normalClosure
lemma le_normalClosure : K ≤ normalClosure F K L 
Arguments: {F : Type u_1} {L : Type u_3} [Field F] [Field L] [Algebra F L] (K : IntermediateField F L)
Goal: K ≤ normalClosure F (↥K) L
-- IntermediateField.normalClosure_of_normal
lemma normalClosure_of_normal [Normal F K] : normalClosure F K L = K 
Arguments: {F : Type u_1} {L : Type u_3} [Field F] [Field L] [Algebra F L] (K : IntermediateField F L) [Normal F ↥K]
Goal: normalClosure F (↥K) L = K
-- IntermediateField.normalClosure_def'
lemma normalClosure_def' : normalClosure F K L = ⨆ f : L →ₐ[F] L, K.map f 
Arguments: {F : Type u_1} {L : Type u_3} [Field F] [Field L] [Algebra F L] (K : IntermediateField F L) [Normal F L]
Goal: normalClosure F (↥K) L = ⨆ f, IntermediateField.map f K
-- IntermediateField.normalClosure_def''
lemma normalClosure_def'' : normalClosure F K L = ⨆ f : L ≃ₐ[F] L, K.map f 
Arguments: {F : Type u_1} {L : Type u_3} [Field F] [Field L] [Algebra F L] (K : IntermediateField F L) [Normal F L]
Goal: normalClosure F (↥K) L = ⨆ f, IntermediateField.map (↑f) K
-- IntermediateField.normalClosure_mono
lemma normalClosure_mono (h : K ≤ K') : normalClosure F K L ≤ normalClosure F K' L 
Arguments: {F : Type u_1} {L : Type u_3} [Field F] [Field L] [Algebra F L] (K K' : IntermediateField F L) [Normal F L] (h : K ≤ K')
Goal: normalClosure F (↥K) L ≤ normalClosure F (↥K') L
-- IntermediateField.closureOperator_isClosed
@[simps]
noncomputable def closureOperator : ClosureOperator (IntermediateField F L) 
Arguments: (F : Type u_1) (L : Type u_3) [Field F] [Field L] [Algebra F L] [Normal F L] (x : IntermediateField F L)
Goal: (IntermediateField.closureOperator F L).IsClosed x = (normalClosure F (↥x) L = x)
-- IntermediateField.closureOperator_apply
@[simps]
noncomputable def closureOperator : ClosureOperator (IntermediateField F L) 
Arguments: (F : Type u_1) (L : Type u_3) [Field F] [Field L] [Algebra F L] [Normal F L] (K : IntermediateField F L)
Goal: (IntermediateField.closureOperator F L) K = normalClosure F (↥K) L
-- IntermediateField.normal_iff_normalClosure_eq
lemma normal_iff_normalClosure_eq : Normal F K ↔ normalClosure F K L = K 
Arguments: {F : Type u_1} {L : Type u_3} [Field F] [Field L] [Algebra F L] [Normal F L] {K : IntermediateField F L}
Goal: Normal F ↥K ↔ normalClosure F (↥K) L = K
-- IntermediateField.normal_iff_normalClosure_le
lemma normal_iff_normalClosure_le : Normal F K ↔ normalClosure F K L ≤ K 
Arguments: {F : Type u_1} {L : Type u_3} [Field F] [Field L] [Algebra F L] [Normal F L] {K : IntermediateField F L}
Goal: Normal F ↥K ↔ normalClosure F (↥K) L ≤ K
-- IntermediateField.normal_iff_forall_fieldRange_le
lemma normal_iff_forall_fieldRange_le : Normal F K ↔ ∀ σ : K →ₐ[F] L, σ.fieldRange ≤ K 
Arguments: {F : Type u_1} {L : Type u_3} [Field F] [Field L] [Algebra F L] [Normal F L] {K : IntermediateField F L}
Goal: Normal F ↥K ↔ ∀ (σ : ↥K →ₐ[F] L), σ.fieldRange ≤ K
-- IntermediateField.normal_iff_forall_map_le
lemma normal_iff_forall_map_le : Normal F K ↔ ∀ σ : L →ₐ[F] L, K.map σ ≤ K 
Arguments: {F : Type u_1} {L : Type u_3} [Field F] [Field L] [Algebra F L] [Normal F L] {K : IntermediateField F L}
Goal: Normal F ↥K ↔ ∀ (σ : L →ₐ[F] L), IntermediateField.map σ K ≤ K
-- IntermediateField.normal_iff_forall_map_le'
lemma normal_iff_forall_map_le' : Normal F K ↔ ∀ σ : L ≃ₐ[F] L, K.map ↑σ ≤ K 
Arguments: {F : Type u_1} {L : Type u_3} [Field F] [Field L] [Algebra F L] [Normal F L] {K : IntermediateField F L}
Goal: Normal F ↥K ↔ ∀ (σ : L ≃ₐ[F] L), IntermediateField.map (↑σ) K ≤ K
-- IntermediateField.normal_iff_forall_fieldRange_eq
lemma normal_iff_forall_fieldRange_eq : Normal F K ↔ ∀ σ : K →ₐ[F] L, σ.fieldRange = K 
Arguments: {F : Type u_1} {L : Type u_3} [Field F] [Field L] [Algebra F L] [Normal F L] {K : IntermediateField F L}
Goal: Normal F ↥K ↔ ∀ (σ : ↥K →ₐ[F] L), σ.fieldRange = K
-- IntermediateField.normal_iff_forall_map_eq
lemma normal_iff_forall_map_eq : Normal F K ↔ ∀ σ : L →ₐ[F] L, K.map σ = K 
Arguments: {F : Type u_1} {L : Type u_3} [Field F] [Field L] [Algebra F L] [Normal F L] {K : IntermediateField F L}
Goal: Normal F ↥K ↔ ∀ (σ : L →ₐ[F] L), IntermediateField.map σ K = K
-- IntermediateField.normal_iff_forall_map_eq'
lemma normal_iff_forall_map_eq' : Normal F K ↔ ∀ σ : L ≃ₐ[F] L, K.map ↑σ = K 
Arguments: {F : Type u_1} {L : Type u_3} [Field F] [Field L] [Algebra F L] [Normal F L] {K : IntermediateField F L}
Goal: Normal F ↥K ↔ ∀ (σ : L ≃ₐ[F] L), IntermediateField.map (↑σ) K = K
-- IntermediateField.map_id
theorem IntermediateField.map_id {K L : Type*} [Field K] [Field L] [Algebra K L]
    (E : IntermediateField K L) : E.map (AlgHom.id K L) = E 
Arguments: {K : Type u_1} {L : Type u_2} [Field K] [Field L] [Algebra K L] (E : IntermediateField K L)
Goal: IntermediateField.map (AlgHom.id K L) E = E
-- IntermediateField.finiteDimensional_bot
theorem IntermediateField.finiteDimensional_bot (K L : Type*) [Field K] [Field L] [Algebra K L] :
    FiniteDimensional K (⊥ : IntermediateField K L) 
Arguments: (K : Type u_1) (L : Type u_2) [Field K] [Field L] [Algebra K L]
Goal: FiniteDimensional K ↥⊥
-- IntermediateField.fixingSubgroup.bot
theorem IntermediateField.fixingSubgroup.bot {K L : Type*} [Field K] [Field L] [Algebra K L] :
    IntermediateField.fixingSubgroup (⊥ : IntermediateField K L) = ⊤ 
Arguments: {K : Type u_1} {L : Type u_2} [Field K] [Field L] [Algebra K L]
Goal: ⊥.fixingSubgroup = ⊤
-- top_fixedByFinite
theorem top_fixedByFinite {K L : Type*} [Field K] [Field L] [Algebra K L] :
    ⊤ ∈ fixedByFinite K L 
Arguments: {K : Type u_1} {L : Type u_2} [Field K] [Field L] [Algebra K L]
Goal: ⊤ ∈ fixedByFinite K L
-- finiteDimensional_sup
theorem finiteDimensional_sup {K L : Type*} [Field K] [Field L] [Algebra K L]
    (E1 E2 : IntermediateField K L) (_ : FiniteDimensional K E1) (_ : FiniteDimensional K E2) :
    FiniteDimensional K (↥(E1 ⊔ E2)) 
Arguments: {K : Type u_1} {L : Type u_2} [Field K] [Field L] [Algebra K L] (E1 E2 : IntermediateField K L)
Goal: FiniteDimensional K ↥E1 → FiniteDimensional K ↥E2 → FiniteDimensional K ↥(E1 ⊔ E2)
-- IntermediateField.mem_fixingSubgroup_iff
theorem IntermediateField.mem_fixingSubgroup_iff {K L : Type*} [Field K] [Field L] [Algebra K L]
    (E : IntermediateField K L) (σ : L ≃ₐ[K] L) : σ ∈ E.fixingSubgroup ↔ ∀ x : L, x ∈ E → σ x = x 
Arguments: {K : Type u_1} {L : Type u_2} [Field K] [Field L] [Algebra K L] (E : IntermediateField K L) (σ : L ≃ₐ[K] L)
Goal: σ ∈ E.fixingSubgroup ↔ ∀ x ∈ E, σ x = x
-- IntermediateField.fixingSubgroup.antimono
theorem IntermediateField.fixingSubgroup.antimono {K L : Type*} [Field K] [Field L] [Algebra K L]
    {E1 E2 : IntermediateField K L} (h12 : E1 ≤ E2) : E2.fixingSubgroup ≤ E1.fixingSubgroup 
Arguments: {K : Type u_1} {L : Type u_2} [Field K] [Field L] [Algebra K L] {E1 E2 : IntermediateField K L} (h12 : E1 ≤ E2)
Goal: E2.fixingSubgroup ≤ E1.fixingSubgroup
-- mem_galBasis_iff
theorem mem_galBasis_iff (K L : Type*) [Field K] [Field L] [Algebra K L] (U : Set (L ≃ₐ[K] L)) :
    U ∈ galBasis K L ↔ U ∈ (fun g => g.carrier) '' fixedByFinite K L 
Arguments: (K : Type u_1) (L : Type u_2) [Field K] [Field L] [Algebra K L] (U : Set (L ≃ₐ[K] L))
Goal: U ∈ galBasis K L ↔ U ∈ (fun g => g.carrier) '' fixedByFinite K L
-- IntermediateField.fixingSubgroup_isOpen
theorem IntermediateField.fixingSubgroup_isOpen {K L : Type*} [Field K] [Field L] [Algebra K L]
    (E : IntermediateField K L) [FiniteDimensional K E] :
    IsOpen (E.fixingSubgroup : Set (L ≃ₐ[K] L)) 
Arguments: {K : Type u_1} {L : Type u_2} [Field K] [Field L] [Algebra K L] (E : IntermediateField K L) [FiniteDimensional K ↥E]
Goal: IsOpen ↑E.fixingSubgroup
-- IntermediateField.fixingSubgroup_isClosed
theorem IntermediateField.fixingSubgroup_isClosed {K L : Type*} [Field K] [Field L] [Algebra K L]
    (E : IntermediateField K L) [FiniteDimensional K E] :
    IsClosed (E.fixingSubgroup : Set (L ≃ₐ[K] L)) 
Arguments: {K : Type u_1} {L : Type u_2} [Field K] [Field L] [Algebra K L] (E : IntermediateField K L) [FiniteDimensional K ↥E]
Goal: IsClosed ↑E.fixingSubgroup
-- krullTopology_t2
theorem krullTopology_t2 {K L : Type*} [Field K] [Field L] [Algebra K L]
    [Algebra.IsIntegral K L] : T2Space (L ≃ₐ[K] L) 
Arguments: {K : Type u_1} {L : Type u_2} [Field K] [Field L] [Algebra K L] [Algebra.IsIntegral K L]
Goal: T2Space (L ≃ₐ[K] L)
-- krullTopology_totallyDisconnected
theorem krullTopology_totallyDisconnected {K L : Type*} [Field K] [Field L] [Algebra K L]
    [Algebra.IsIntegral K L] : IsTotallyDisconnected (Set.univ : Set (L ≃ₐ[K] L)) 
Arguments: {K : Type u_1} {L : Type u_2} [Field K] [Field L] [Algebra K L] [Algebra.IsIntegral K L]
Goal: IsTotallyDisconnected Set.univ
-- IntermediateField.fixingSubgroup_top
@[simp] lemma IntermediateField.fixingSubgroup_top (K L : Type*) [Field K] [Field L] [Algebra K L] :
    IntermediateField.fixingSubgroup (⊤ : IntermediateField K L) = ⊥ 
Arguments: (K : Type u_1) (L : Type u_2) [Field K] [Field L] [Algebra K L]
Goal: ⊤.fixingSubgroup = ⊥
-- IntermediateField.fixingSubgroup_bot
@[simp] lemma IntermediateField.fixingSubgroup_bot (K L : Type*) [Field K] [Field L] [Algebra K L] :
    IntermediateField.fixingSubgroup (⊥ : IntermediateField K L) = ⊤ 
Arguments: (K : Type u_1) (L : Type u_2) [Field K] [Field L] [Algebra K L]
Goal: ⊥.fixingSubgroup = ⊤
-- RatFunc.taylor_mem_nonZeroDivisors
theorem taylor_mem_nonZeroDivisors (hp : p ∈ R[X]⁰) : taylor r p ∈ R[X]⁰ 
Arguments: {R : Type u} [CommRing R] (r : R) (p : Polynomial R) (hp : p ∈ nonZeroDivisors (Polynomial R))
Goal: (Polynomial.taylor r) p ∈ nonZeroDivisors (Polynomial R)
-- RatFunc.laurentAux_ofFractionRing_mk
theorem laurentAux_ofFractionRing_mk (q : R[X]⁰) :
    laurentAux r (ofFractionRing (Localization.mk p q)) =
      ofFractionRing (.mk (taylor r p) ⟨taylor r q, taylor_mem_nonZeroDivisors r q q.prop⟩) 
Arguments: {R : Type u} [CommRing R] [hdomain : IsDomain R] (r : R) (p : Polynomial R) (q : ↥(nonZeroDivisors (Polynomial R)))
Goal: (RatFunc.laurentAux r) { toFractionRing := Localization.mk p q } =
  { toFractionRing := Localization.mk ((Polynomial.taylor r) p) ⟨(Polynomial.taylor r) ↑q, ⋯⟩ }
-- RatFunc.laurentAux_div
theorem laurentAux_div :
    laurentAux r (algebraMap _ _ p / algebraMap _ _ q) =
      algebraMap _ _ (taylor r p) / algebraMap _ _ (taylor r q) 
Arguments: {R : Type u} [CommRing R] [hdomain : IsDomain R] (r : R) (p q : Polynomial R)
Goal: (RatFunc.laurentAux r) ((algebraMap (Polynomial R) (RatFunc R)) p / (algebraMap (Polynomial R) (RatFunc R)) q) =
  (algebraMap (Polynomial R) (RatFunc R)) ((Polynomial.taylor r) p) /
    (algebraMap (Polynomial R) (RatFunc R)) ((Polynomial.taylor r) q)
-- RatFunc.laurentAux_algebraMap
@[simp]
theorem laurentAux_algebraMap : laurentAux r (algebraMap _ _ p) = algebraMap _ _ (taylor r p) 
Arguments: {R : Type u} [CommRing R] [hdomain : IsDomain R] (r : R) (p : Polynomial R)
Goal: (RatFunc.laurentAux r) ((algebraMap (Polynomial R) (RatFunc R)) p) =
  (algebraMap (Polynomial R) (RatFunc R)) ((Polynomial.taylor r) p)
-- RatFunc.laurent_div
theorem laurent_div :
    laurent r (algebraMap _ _ p / algebraMap _ _ q) =
      algebraMap _ _ (taylor r p) / algebraMap _ _ (taylor r q) 
Arguments: {R : Type u} [CommRing R] [hdomain : IsDomain R] (r : R) (p q : Polynomial R)
Goal: (RatFunc.laurent r) ((algebraMap (Polynomial R) (RatFunc R)) p / (algebraMap (Polynomial R) (RatFunc R)) q) =
  (algebraMap (Polynomial R) (RatFunc R)) ((Polynomial.taylor r) p) /
    (algebraMap (Polynomial R) (RatFunc R)) ((Polynomial.taylor r) q)
-- RatFunc.laurent_algebraMap
@[simp]
theorem laurent_algebraMap : laurent r (algebraMap _ _ p) = algebraMap _ _ (taylor r p) 
Arguments: {R : Type u} [CommRing R] [hdomain : IsDomain R] (r : R) (p : Polynomial R)
Goal: (RatFunc.laurent r) ((algebraMap (Polynomial R) (RatFunc R)) p) =
  (algebraMap (Polynomial R) (RatFunc R)) ((Polynomial.taylor r) p)
-- RatFunc.laurent_X
@[simp]
theorem laurent_X : laurent r X = X + C r 
Arguments: {R : Type u} [CommRing R] [hdomain : IsDomain R] (r : R)
Goal: (RatFunc.laurent r) RatFunc.X = RatFunc.X + RatFunc.C r
-- RatFunc.laurent_C
@[simp]
theorem laurent_C (x : R) : laurent r (C x) = C x 
Arguments: {R : Type u} [CommRing R] [hdomain : IsDomain R] (r x : R)
Goal: (RatFunc.laurent r) (RatFunc.C x) = RatFunc.C x
-- RatFunc.laurent_at_zero
@[simp]
theorem laurent_at_zero : laurent 0 f = f 
Arguments: {R : Type u} [CommRing R] [hdomain : IsDomain R] (f : RatFunc R)
Goal: (RatFunc.laurent 0) f = f
-- RatFunc.laurent_laurent
theorem laurent_laurent : laurent r (laurent s f) = laurent (r + s) f 
Arguments: {R : Type u} [CommRing R] [hdomain : IsDomain R] (r s : R) (f : RatFunc R)
Goal: (RatFunc.laurent r) ((RatFunc.laurent s) f) = (RatFunc.laurent (r + s)) f
-- RatFunc.laurent_injective
theorem laurent_injective : Function.Injective (laurent r) 
Arguments: {R : Type u} [CommRing R] [hdomain : IsDomain R] (r : R)
Goal: Function.Injective ⇑(RatFunc.laurent r)
-- Module.dualPairing_apply
@[simp]
theorem dualPairing_apply (v x) : dualPairing R M v x = v x 
Arguments: (R : Type uR) (M : Type uM) [CommSemiring R] [AddCommMonoid M] [Module R M] (v : Module.Dual R M) (x : M)
Goal: ((Module.dualPairing R M) v) x = v x
-- Module.Dual.eval_apply
@[simp]
theorem eval_apply (v : M) (a : Dual R M) : eval R M v a = a v 
Arguments: (R : Type uR) (M : Type uM) [CommSemiring R] [AddCommMonoid M] [Module R M] (v : M) (a : Module.Dual R M)
Goal: ((Module.Dual.eval R M) v) a = a v
-- Module.Dual.transpose_apply
theorem transpose_apply (u : M →ₗ[R] M') (l : Dual R M') : transpose (R := R) u l = l.comp u 
Arguments: {R : Type uR} {M : Type uM} [CommSemiring R] [AddCommMonoid M] [Module R M] {M' : Type uM'} [AddCommMonoid M'] [Module R M'] (u : M →ₗ[R] M') (l : Module.Dual R M')
Goal: (Module.Dual.transpose u) l = l ∘ₗ u