ruc-ai4math/mathlib_handler_benchmark_410 huggingface dataset:
-- AlgHom.fieldRange_eq_map
theorem _root_.AlgHom.fieldRange_eq_map (f : E →ₐ[F] K) :
    f.fieldRange = IntermediateField.map f ⊤ 
Arguments: {F : Type u_1} [Field F] {E : Type u_2} [Field E] [Algebra F E] {K : Type u_3} [Field K] [Algebra F K] (f : E →ₐ[F] K)
Goal: f.fieldRange = IntermediateField.map f ⊤
-- AlgHom.map_fieldRange
theorem _root_.AlgHom.map_fieldRange {L : Type*} [Field L] [Algebra F L]
    (f : E →ₐ[F] K) (g : K →ₐ[F] L) : f.fieldRange.map g = (g.comp f).fieldRange 
Arguments: {F : Type u_1} [Field F] {E : Type u_2} [Field E] [Algebra F E] {K : Type u_3} [Field K] [Algebra F K] {L : Type u_4} [Field L] [Algebra F L] (f : E →ₐ[F] K) (g : K →ₐ[F] L)
Goal: IntermediateField.map g f.fieldRange = (g.comp f).fieldRange
-- AlgHom.fieldRange_eq_top
theorem _root_.AlgHom.fieldRange_eq_top {f : E →ₐ[F] K} :
    f.fieldRange = ⊤ ↔ Function.Surjective f 
Arguments: {F : Type u_1} [Field F] {E : Type u_2} [Field E] [Algebra F E] {K : Type u_3} [Field K] [Algebra F K] {f : E →ₐ[F] K}
Goal: f.fieldRange = ⊤ ↔ Function.Surjective ⇑f
-- AlgEquiv.fieldRange_eq_top
@[simp]
theorem _root_.AlgEquiv.fieldRange_eq_top (f : E ≃ₐ[F] K) :
    (f : E →ₐ[F] K).fieldRange = ⊤ 
Arguments: {F : Type u_1} [Field F] {E : Type u_2} [Field E] [Algebra F E] {K : Type u_3} [Field K] [Algebra F K] (f : E ≃ₐ[F] K)
Goal: (↑f).fieldRange = ⊤
-- IntermediateField.fieldRange_comp_val
theorem fieldRange_comp_val : (f.comp L.val).fieldRange = L.map f 
Arguments: {F : Type u_1} [Field F] {E : Type u_2} [Field E] [Algebra F E] {K : Type u_3} [Field K] [Algebra F K] (L : IntermediateField F E) (f : E →ₐ[F] K)
Goal: (f.comp L.val).fieldRange = IntermediateField.map f L
-- IntermediateField.coe_equivMap_apply
@[simp]
theorem coe_equivMap_apply (x : L) : ↑(equivMap L f x) = f x 
Arguments: {F : Type u_1} [Field F] {E : Type u_2} [Field E] [Algebra F E] {K : Type u_3} [Field K] [Algebra F K] (L : IntermediateField F E) (f : E →ₐ[F] K) (x : ↥L)
Goal: ↑((L.equivMap f) x) = f ↑x
-- IntermediateField.adjoin_eq_range_algebraMap_adjoin
theorem adjoin_eq_range_algebraMap_adjoin :
    (adjoin F S : Set E) = Set.range (algebraMap (adjoin F S) E) 
Arguments: (F : Type u_1) [Field F] {E : Type u_2} [Field E] [Algebra F E] (S : Set E)
Goal: ↑(IntermediateField.adjoin F S) = Set.range ⇑(algebraMap (↥(IntermediateField.adjoin F S)) E)
-- IntermediateField.adjoin.algebraMap_mem
theorem adjoin.algebraMap_mem (x : F) : algebraMap F E x ∈ adjoin F S 
Arguments: (F : Type u_1) [Field F] {E : Type u_2} [Field E] [Algebra F E] (S : Set E) (x : F)
Goal: (algebraMap F E) x ∈ IntermediateField.adjoin F S
-- IntermediateField.adjoin.range_algebraMap_subset
theorem adjoin.range_algebraMap_subset : Set.range (algebraMap F E) ⊆ adjoin F S 
Arguments: (F : Type u_1) [Field F] {E : Type u_2} [Field E] [Algebra F E] (S : Set E)
Goal: Set.range ⇑(algebraMap F E) ⊆ ↑(IntermediateField.adjoin F S)
-- IntermediateField.subset_adjoin
theorem subset_adjoin : S ⊆ adjoin F S 
Arguments: (F : Type u_1) [Field F] {E : Type u_2} [Field E] [Algebra F E] (S : Set E)
Goal: S ⊆ ↑(IntermediateField.adjoin F S)
-- IntermediateField.adjoin.mono
@[mono]
theorem adjoin.mono (T : Set E) (h : S ⊆ T) : adjoin F S ≤ adjoin F T 
Arguments: (F : Type u_1) [Field F] {E : Type u_2} [Field E] [Algebra F E] (S T : Set E) (h : S ⊆ T)
Goal: IntermediateField.adjoin F S ≤ IntermediateField.adjoin F T
-- IntermediateField.adjoin_contains_field_as_subfield
theorem adjoin_contains_field_as_subfield (F : Subfield E) : (F : Set E) ⊆ adjoin F S 
Arguments: {E : Type u_2} [Field E] (S : Set E) (F : Subfield E)
Goal: ↑F ⊆ ↑(IntermediateField.adjoin (↥F) S)
-- IntermediateField.subset_adjoin_of_subset_left
theorem subset_adjoin_of_subset_left {F : Subfield E} {T : Set E} (HT : T ⊆ F) : T ⊆ adjoin F S 
Arguments: {E : Type u_2} [Field E] (S : Set E) {F : Subfield E} {T : Set E} (HT : T ⊆ ↑F)
Goal: T ⊆ ↑(IntermediateField.adjoin (↥F) S)
-- IntermediateField.subset_adjoin_of_subset_right
theorem subset_adjoin_of_subset_right {T : Set E} (H : T ⊆ S) : T ⊆ adjoin F S 
Arguments: (F : Type u_1) [Field F] {E : Type u_2} [Field E] [Algebra F E] (S : Set E) {T : Set E} (H : T ⊆ S)
Goal: T ⊆ ↑(IntermediateField.adjoin F S)
-- IntermediateField.adjoin_empty
@[simp]
theorem adjoin_empty (F E : Type*) [Field F] [Field E] [Algebra F E] : adjoin F (∅ : Set E) = ⊥ 
Arguments: (F : Type u_3) (E : Type u_4) [Field F] [Field E] [Algebra F E]
Goal: F⟮⟯ = ⊥
-- IntermediateField.adjoin_univ
@[simp]
theorem adjoin_univ (F E : Type*) [Field F] [Field E] [Algebra F E] :
    adjoin F (Set.univ : Set E) = ⊤ 
Arguments: (F : Type u_3) (E : Type u_4) [Field F] [Field E] [Algebra F E]
Goal: IntermediateField.adjoin F Set.univ = ⊤
-- IntermediateField.adjoin_le_subfield
theorem adjoin_le_subfield {K : Subfield E} (HF : Set.range (algebraMap F E) ⊆ K) (HS : S ⊆ K) :
    (adjoin F S).toSubfield ≤ K 
Arguments: (F : Type u_1) [Field F] {E : Type u_2} [Field E] [Algebra F E] (S : Set E) {K : Subfield E} (HF : Set.range ⇑(algebraMap F E) ⊆ ↑K) (HS : S ⊆ ↑K)
Goal: (IntermediateField.adjoin F S).toSubfield ≤ K
-- IntermediateField.adjoin_subset_adjoin_iff
theorem adjoin_subset_adjoin_iff {F' : Type*} [Field F'] [Algebra F' E] {S S' : Set E} :
    (adjoin F S : Set E) ⊆ adjoin F' S' ↔
      Set.range (algebraMap F E) ⊆ adjoin F' S' ∧ S ⊆ adjoin F' S' 
Arguments: (F : Type u_1) [Field F] {E : Type u_2} [Field E] [Algebra F E] {F' : Type u_3} [Field F'] [Algebra F' E] {S S' : Set E}
Goal: ↑(IntermediateField.adjoin F S) ⊆ ↑(IntermediateField.adjoin F' S') ↔
  Set.range ⇑(algebraMap F E) ⊆ ↑(IntermediateField.adjoin F' S') ∧ S ⊆ ↑(IntermediateField.adjoin F' S')
-- IntermediateField.adjoin_adjoin_left
theorem adjoin_adjoin_left (T : Set E) :
    (adjoin (adjoin F S) T).restrictScalars _ = adjoin F (S ∪ T) 
Arguments: (F : Type u_1) [Field F] {E : Type u_2} [Field E] [Algebra F E] (S T : Set E)
Goal: IntermediateField.restrictScalars F (IntermediateField.adjoin (↥(IntermediateField.adjoin F S)) T) =
  IntermediateField.adjoin F (S ∪ T)
-- IntermediateField.adjoin_insert_adjoin
@[simp]
theorem adjoin_insert_adjoin (x : E) :
    adjoin F (insert x (adjoin F S : Set E)) = adjoin F (insert x S) 
Arguments: (F : Type u_1) [Field F] {E : Type u_2} [Field E] [Algebra F E] (S : Set E) (x : E)
Goal: IntermediateField.adjoin F (insert x ↑(IntermediateField.adjoin F S)) = IntermediateField.adjoin F (insert x S)
-- IntermediateField.adjoin_adjoin_comm
theorem adjoin_adjoin_comm (T : Set E) :
    (adjoin (adjoin F S) T).restrictScalars F = (adjoin (adjoin F T) S).restrictScalars F 
Arguments: (F : Type u_1) [Field F] {E : Type u_2} [Field E] [Algebra F E] (S T : Set E)
Goal: IntermediateField.restrictScalars F (IntermediateField.adjoin (↥(IntermediateField.adjoin F S)) T) =
  IntermediateField.restrictScalars F (IntermediateField.adjoin (↥(IntermediateField.adjoin F T)) S)
-- IntermediateField.adjoin_map
theorem adjoin_map {E' : Type*} [Field E'] [Algebra F E'] (f : E →ₐ[F] E') :
    (adjoin F S).map f = adjoin F (f '' S) 
Arguments: (F : Type u_1) [Field F] {E : Type u_2} [Field E] [Algebra F E] (S : Set E) {E' : Type u_3} [Field E'] [Algebra F E'] (f : E →ₐ[F] E')
Goal: IntermediateField.map f (IntermediateField.adjoin F S) = IntermediateField.adjoin F (⇑f '' S)
-- IntermediateField.lift_adjoin
@[simp]
theorem lift_adjoin (K : IntermediateField F E) (S : Set K) :
    lift (adjoin F S) = adjoin F (Subtype.val '' S) 
Arguments: (F : Type u_1) [Field F] {E : Type u_2} [Field E] [Algebra F E] (K : IntermediateField F E) (S : Set ↥K)
Goal: IntermediateField.lift (IntermediateField.adjoin F S) = IntermediateField.adjoin F (Subtype.val '' S)
-- IntermediateField.lift_adjoin_simple
theorem lift_adjoin_simple (K : IntermediateField F E) (α : K) :
    lift (adjoin F {α}) = adjoin F {α.1} 
Arguments: (F : Type u_1) [Field F] {E : Type u_2} [Field E] [Algebra F E] (K : IntermediateField F E) (α : ↥K)
Goal: IntermediateField.lift F⟮α⟯ = F⟮↑α⟯
-- IntermediateField.lift_bot
@[simp]
theorem lift_bot (K : IntermediateField F E) :
    lift (F := K) ⊥ = ⊥ 
Arguments: (F : Type u_1) [Field F] {E : Type u_2} [Field E] [Algebra F E] (K : IntermediateField F E)
Goal: IntermediateField.lift ⊥ = ⊥
-- IntermediateField.lift_top
@[simp]
theorem lift_top (K : IntermediateField F E) :
    lift (F := K) ⊤ = K 
Arguments: (F : Type u_1) [Field F] {E : Type u_2} [Field E] [Algebra F E] (K : IntermediateField F E)
Goal: IntermediateField.lift ⊤ = K
-- IntermediateField.adjoin_self
@[simp]
theorem adjoin_self (K : IntermediateField F E) :
    adjoin F K = K 
Arguments: (F : Type u_1) [Field F] {E : Type u_2} [Field E] [Algebra F E] (K : IntermediateField F E)
Goal: IntermediateField.adjoin F ↑K = K
-- IntermediateField.restrictScalars_adjoin
theorem restrictScalars_adjoin (K : IntermediateField F E) (S : Set E) :
    restrictScalars F (adjoin K S) = adjoin F (K ∪ S) 
Arguments: (F : Type u_1) [Field F] {E : Type u_2} [Field E] [Algebra F E] (K : IntermediateField F E) (S : Set E)
Goal: IntermediateField.restrictScalars F (IntermediateField.adjoin (↥K) S) = IntermediateField.adjoin F (↑K ∪ S)
-- IntermediateField.extendScalars_adjoin
theorem extendScalars_adjoin {K : IntermediateField F E} {S : Set E} (h : K ≤ adjoin F S) :
    extendScalars h = adjoin K S 
Arguments: {F : Type u_1} [Field F] {E : Type u_2} [Field E] [Algebra F E] {K : IntermediateField F E} {S : Set E} (h : K ≤ IntermediateField.adjoin F S)
Goal: IntermediateField.extendScalars h = IntermediateField.adjoin (↥K) S
-- IntermediateField.restrictScalars_adjoin_of_algEquiv
theorem restrictScalars_adjoin_of_algEquiv
    {L L' : Type*} [Field L] [Field L']
    [Algebra F L] [Algebra L E] [Algebra F L'] [Algebra L' E]
    [IsScalarTower F L E] [IsScalarTower F L' E] (i : L ≃ₐ[F] L')
    (hi : algebraMap L E = (algebraMap L' E) ∘ i) (S : Set E) :
    (adjoin L S).restrictScalars F = (adjoin L' S).restrictScalars F 
Arguments: {F : Type u_1} [Field F] {E : Type u_2} [Field E] [Algebra F E] {L : Type u_3} {L' : Type u_4} [Field L] [Field L'] [Algebra F L] [Algebra L E] [Algebra F L'] [Algebra L' E] [IsScalarTower F L E] [IsScalarTower F L' E] (i : L ≃ₐ[F] L') (hi : ⇑(algebraMap L E) = ⇑(algebraMap L' E) ∘ ⇑i) (S : Set E)
Goal: IntermediateField.restrictScalars F (IntermediateField.adjoin L S) =
  IntermediateField.restrictScalars F (IntermediateField.adjoin L' S)
-- IntermediateField.algebra_adjoin_le_adjoin
theorem algebra_adjoin_le_adjoin : Algebra.adjoin F S ≤ (adjoin F S).toSubalgebra 
Arguments: (F : Type u_1) [Field F] {E : Type u_2} [Field E] [Algebra F E] (S : Set E)
Goal: Algebra.adjoin F S ≤ (IntermediateField.adjoin F S).toSubalgebra
-- IntermediateField.adjoin_eq_algebra_adjoin
theorem adjoin_eq_algebra_adjoin (inv_mem : ∀ x ∈ Algebra.adjoin F S, x⁻¹ ∈ Algebra.adjoin F S) :
    (adjoin F S).toSubalgebra = Algebra.adjoin F S 
Arguments: (F : Type u_1) [Field F] {E : Type u_2} [Field E] [Algebra F E] (S : Set E) (inv_mem : ∀ x ∈ Algebra.adjoin F S, x⁻¹ ∈ Algebra.adjoin F S)
Goal: (IntermediateField.adjoin F S).toSubalgebra = Algebra.adjoin F S
-- IntermediateField.eq_adjoin_of_eq_algebra_adjoin
theorem eq_adjoin_of_eq_algebra_adjoin (K : IntermediateField F E)
    (h : K.toSubalgebra = Algebra.adjoin F S) : K = adjoin F S 
Arguments: (F : Type u_1) [Field F] {E : Type u_2} [Field E] [Algebra F E] (S : Set E) (K : IntermediateField F E) (h : K.toSubalgebra = Algebra.adjoin F S)
Goal: K = IntermediateField.adjoin F S
-- IntermediateField.adjoin_eq_top_of_algebra
theorem adjoin_eq_top_of_algebra (hS : Algebra.adjoin F S = ⊤) : adjoin F S = ⊤ 
Arguments: (F : Type u_1) [Field F] {E : Type u_2} [Field E] [Algebra F E] (S : Set E) (hS : Algebra.adjoin F S = ⊤)
Goal: IntermediateField.adjoin F S = ⊤
-- IntermediateField.adjoin_induction
@[elab_as_elim]
theorem adjoin_induction {s : Set E} {p : E → Prop} {x} (h : x ∈ adjoin F s) (mem : ∀ x ∈ s, p x)
    (algebraMap : ∀ x, p (algebraMap F E x)) (add : ∀ x y, p x → p y → p (x + y))
    (neg : ∀ x, p x → p (-x)) (inv : ∀ x, p x → p x⁻¹) (mul : ∀ x y, p x → p y → p (x * y)) :
    p x 
Arguments: (F : Type u_1) [Field F] {E : Type u_2} [Field E] [Algebra F E] {s : Set E} {p : E → Prop} {x : E} (h : x ∈ IntermediateField.adjoin F s) (mem : ∀ x ∈ s, p x) (algebraMap : ∀ (x : F), p ((algebraMap F E) x)) (add : ∀ (x y : E), p x → p y → p (x + y)) (neg : ∀ (x : E), p x → p (-x)) (inv : ∀ (x : E), p x → p x⁻¹) (mul : ∀ (x y : E), p x → p y → p (x * y))
Goal: p x
-- IntermediateField.mem_adjoin_simple_self
theorem mem_adjoin_simple_self : α ∈ F⟮α⟯ 
Arguments: (F : Type u_1) [Field F] {E : Type u_2} [Field E] [Algebra F E] (α : E)
Goal: α ∈ F⟮α⟯
-- IntermediateField.AdjoinSimple.coe_gen
@[simp]
theorem AdjoinSimple.coe_gen : (AdjoinSimple.gen F α : E) = α 
Arguments: (F : Type u_1) [Field F] {E : Type u_2} [Field E] [Algebra F E] (α : E)
Goal: ↑(IntermediateField.AdjoinSimple.gen F α) = α
-- IntermediateField.AdjoinSimple.algebraMap_gen
theorem AdjoinSimple.algebraMap_gen : algebraMap F⟮α⟯ E (AdjoinSimple.gen F α) = α 
Arguments: (F : Type u_1) [Field F] {E : Type u_2} [Field E] [Algebra F E] (α : E)
Goal: (algebraMap (↥F⟮α⟯) E) (IntermediateField.AdjoinSimple.gen F α) = α
-- IntermediateField.AdjoinSimple.isIntegral_gen
@[simp]
theorem AdjoinSimple.isIntegral_gen : IsIntegral F (AdjoinSimple.gen F α) ↔ IsIntegral F α 
Arguments: (F : Type u_1) [Field F] {E : Type u_2} [Field E] [Algebra F E] (α : E)
Goal: IsIntegral F (IntermediateField.AdjoinSimple.gen F α) ↔ IsIntegral F α
-- IntermediateField.adjoin_simple_adjoin_simple
theorem adjoin_simple_adjoin_simple (β : E) : F⟮α⟯⟮β⟯.restrictScalars F = F⟮α, β⟯ 
Arguments: (F : Type u_1) [Field F] {E : Type u_2} [Field E] [Algebra F E] (α β : E)
Goal: IntermediateField.restrictScalars F (↥F⟮α⟯)⟮β⟯ = F⟮α, β⟯
-- IntermediateField.adjoin_simple_comm
theorem adjoin_simple_comm (β : E) : F⟮α⟯⟮β⟯.restrictScalars F = F⟮β⟯⟮α⟯.restrictScalars F 
Arguments: (F : Type u_1) [Field F] {E : Type u_2} [Field E] [Algebra F E] (α β : E)
Goal: IntermediateField.restrictScalars F (↥F⟮α⟯)⟮β⟯ = IntermediateField.restrictScalars F (↥F⟮β⟯)⟮α⟯
-- IntermediateField.adjoin_algebraic_toSubalgebra
theorem adjoin_algebraic_toSubalgebra {S : Set E} (hS : ∀ x ∈ S, IsAlgebraic F x) :
    (IntermediateField.adjoin F S).toSubalgebra = Algebra.adjoin F S 
Arguments: {F : Type u_1} [Field F] {E : Type u_2} [Field E] [Algebra F E] {S : Set E} (hS : ∀ x ∈ S, IsAlgebraic F x)
Goal: (IntermediateField.adjoin F S).toSubalgebra = Algebra.adjoin F S
-- IntermediateField.adjoin_simple_toSubalgebra_of_integral
theorem adjoin_simple_toSubalgebra_of_integral (hα : IsIntegral F α) :
    F⟮α⟯.toSubalgebra = Algebra.adjoin F {α} 
Arguments: {F : Type u_1} [Field F] {E : Type u_2} [Field E] [Algebra F E] {α : E} (hα : IsIntegral F α)
Goal: F⟮α⟯.toSubalgebra = Algebra.adjoin F {α}
-- isSplittingField_iff_intermediateField
theorem _root_.isSplittingField_iff_intermediateField {p : F[X]} :
    p.IsSplittingField F E ↔ p.Splits (algebraMap F E) ∧ adjoin F (p.rootSet E) = ⊤ 
Arguments: {F : Type u_1} [Field F] {E : Type u_2} [Field E] [Algebra F E] {p : F[X]}
Goal: Polynomial.IsSplittingField F E p ↔ Polynomial.Splits (algebraMap F E) p ∧ IntermediateField.adjoin F (p.rootSet E) = ⊤
-- IntermediateField.isSplittingField_iff
theorem isSplittingField_iff {p : F[X]} {K : IntermediateField F E} :
    p.IsSplittingField F K ↔ p.Splits (algebraMap F K) ∧ K = adjoin F (p.rootSet E) 
Arguments: {F : Type u_1} [Field F] {E : Type u_2} [Field E] [Algebra F E] {p : F[X]} {K : IntermediateField F E}
Goal: Polynomial.IsSplittingField F (↥K) p ↔
  Polynomial.Splits (algebraMap F ↥K) p ∧ K = IntermediateField.adjoin F (p.rootSet E)
-- IntermediateField.adjoin_rootSet_isSplittingField
theorem adjoin_rootSet_isSplittingField {p : F[X]} (hp : p.Splits (algebraMap F E)) :
    p.IsSplittingField F (adjoin F (p.rootSet E)) 
Arguments: {F : Type u_1} [Field F] {E : Type u_2} [Field E] [Algebra F E] {p : F[X]} (hp : Polynomial.Splits (algebraMap F E) p)
Goal: Polynomial.IsSplittingField F (↥(IntermediateField.adjoin F (p.rootSet E))) p
-- IntermediateField.le_sup_toSubalgebra
theorem le_sup_toSubalgebra : E1.toSubalgebra ⊔ E2.toSubalgebra ≤ (E1 ⊔ E2).toSubalgebra 
Arguments: {K : Type u_3} {L : Type u_4} [Field K] [Field L] [Algebra K L] (E1 E2 : IntermediateField K L)
Goal: E1.toSubalgebra ⊔ E2.toSubalgebra ≤ (E1 ⊔ E2).toSubalgebra
-- IntermediateField.sup_toSubalgebra_of_isAlgebraic_right
theorem sup_toSubalgebra_of_isAlgebraic_right [Algebra.IsAlgebraic K E2] :
    (E1 ⊔ E2).toSubalgebra = E1.toSubalgebra ⊔ E2.toSubalgebra 
Arguments: {K : Type u_3} {L : Type u_4} [Field K] [Field L] [Algebra K L] (E1 E2 : IntermediateField K L) [Algebra.IsAlgebraic K ↥E2]
Goal: (E1 ⊔ E2).toSubalgebra = E1.toSubalgebra ⊔ E2.toSubalgebra
-- IntermediateField.sup_toSubalgebra_of_isAlgebraic_left
theorem sup_toSubalgebra_of_isAlgebraic_left [Algebra.IsAlgebraic K E1] :
    (E1 ⊔ E2).toSubalgebra = E1.toSubalgebra ⊔ E2.toSubalgebra 
Arguments: {K : Type u_3} {L : Type u_4} [Field K] [Field L] [Algebra K L] (E1 E2 : IntermediateField K L) [Algebra.IsAlgebraic K ↥E1]
Goal: (E1 ⊔ E2).toSubalgebra = E1.toSubalgebra ⊔ E2.toSubalgebra
-- IntermediateField.sup_toSubalgebra_of_isAlgebraic
theorem sup_toSubalgebra_of_isAlgebraic
    (halg : Algebra.IsAlgebraic K E1 ∨ Algebra.IsAlgebraic K E2) :
    (E1 ⊔ E2).toSubalgebra = E1.toSubalgebra ⊔ E2.toSubalgebra 
Arguments: {K : Type u_3} {L : Type u_4} [Field K] [Field L] [Algebra K L] (E1 E2 : IntermediateField K L) (halg : Algebra.IsAlgebraic K ↥E1 ∨ Algebra.IsAlgebraic K ↥E2)
Goal: (E1 ⊔ E2).toSubalgebra = E1.toSubalgebra ⊔ E2.toSubalgebra
-- IntermediateField.sup_toSubalgebra_of_left
theorem sup_toSubalgebra_of_left [FiniteDimensional K E1] :
    (E1 ⊔ E2).toSubalgebra = E1.toSubalgebra ⊔ E2.toSubalgebra 
Arguments: {K : Type u_3} {L : Type u_4} [Field K] [Field L] [Algebra K L] (E1 E2 : IntermediateField K L) [FiniteDimensional K ↥E1]
Goal: (E1 ⊔ E2).toSubalgebra = E1.toSubalgebra ⊔ E2.toSubalgebra
-- IntermediateField.sup_toSubalgebra_of_right
theorem sup_toSubalgebra_of_right [FiniteDimensional K E2] :
    (E1 ⊔ E2).toSubalgebra = E1.toSubalgebra ⊔ E2.toSubalgebra 
Arguments: {K : Type u_3} {L : Type u_4} [Field K] [Field L] [Algebra K L] (E1 E2 : IntermediateField K L) [FiniteDimensional K ↥E2]
Goal: (E1 ⊔ E2).toSubalgebra = E1.toSubalgebra ⊔ E2.toSubalgebra
-- IntermediateField.coe_iSup_of_directed
theorem coe_iSup_of_directed [Nonempty ι] (dir : Directed (· ≤ ·) t) :
    ↑(iSup t) = ⋃ i, (t i : Set L) 
Arguments: {K : Type u_3} {L : Type u_4} [Field K] [Field L] [Algebra K L] {ι : Type u_5} {t : ι → IntermediateField K L} [Nonempty ι] (dir : Directed (fun x x_1 => x ≤ x_1) t)
Goal: ↑(iSup t) = ⋃ i, ↑(t i)
-- IntermediateField.toSubalgebra_iSup_of_directed
theorem toSubalgebra_iSup_of_directed (dir : Directed (· ≤ ·) t) :
    (iSup t).toSubalgebra = ⨆ i, (t i).toSubalgebra 
Arguments: {K : Type u_3} {L : Type u_4} [Field K] [Field L] [Algebra K L] {ι : Type u_5} {t : ι → IntermediateField K L} (dir : Directed (fun x x_1 => x ≤ x_1) t)
Goal: (iSup t).toSubalgebra = ⨆ i, (t i).toSubalgebra
-- IntermediateField.finiteDimensional_iSup_of_finset'
theorem finiteDimensional_iSup_of_finset'
    /- Porting note: this was the mathlib3 version. Using `[h : ...]`, as in mathlib3, causes the
    error "invalid parametric local instance". -/
    {s : Finset ι} (h : ∀ i ∈ s, FiniteDimensional K (t i)) :
    FiniteDimensional K (⨆ i ∈ s, t i : IntermediateField K L) 
Arguments: {K : Type u_3} {L : Type u_4} [Field K] [Field L] [Algebra K L] {ι : Type u_5} {t : ι → IntermediateField K L} {s : Finset ι} (h : ∀ i ∈ s, FiniteDimensional K ↥(t i))
Goal: FiniteDimensional K ↥(⨆ i ∈ s, t i)
-- IntermediateField.isSplittingField_iSup
theorem isSplittingField_iSup {p : ι → K[X]}
    {s : Finset ι} (h0 : ∏ i ∈ s, p i ≠ 0) (h : ∀ i ∈ s, (p i).IsSplittingField K (t i)) :
    (∏ i ∈ s, p i).IsSplittingField K (⨆ i ∈ s, t i : IntermediateField K L) 
Arguments: {K : Type u_3} {L : Type u_4} [Field K] [Field L] [Algebra K L] {ι : Type u_5} {t : ι → IntermediateField K L} {p : ι → K[X]} {s : Finset ι} (h0 : ∏ i ∈ s, p i ≠ 0) (h : ∀ i ∈ s, Polynomial.IsSplittingField K (↥(t i)) (p i))
Goal: Polynomial.IsSplittingField K (↥(⨆ i ∈ s, t i)) (∏ i ∈ s, p i)
-- IntermediateField.adjoin_toSubalgebra_of_isAlgebraic
theorem adjoin_toSubalgebra_of_isAlgebraic (L : IntermediateField F K)
    (halg : Algebra.IsAlgebraic F E ∨ Algebra.IsAlgebraic F L) :
    (adjoin E (L : Set K)).toSubalgebra = Algebra.adjoin E (L : Set K) 
Arguments: {F : Type u_1} [Field F] (E : Type u_2) [Field E] [Algebra F E] {K : Type u_3} [Field K] [Algebra F K] [Algebra E K] [IsScalarTower F E K] (L : IntermediateField F K) (halg : Algebra.IsAlgebraic F E ∨ Algebra.IsAlgebraic F ↥L)
Goal: (IntermediateField.adjoin E ↑L).toSubalgebra = Algebra.adjoin E ↑L
-- IntermediateField.adjoin_toSubalgebra_of_isAlgebraic_left
theorem adjoin_toSubalgebra_of_isAlgebraic_left (L : IntermediateField F K)
    [halg : Algebra.IsAlgebraic F E] :
    (adjoin E (L : Set K)).toSubalgebra = Algebra.adjoin E (L : Set K) 
Arguments: {F : Type u_1} [Field F] (E : Type u_2) [Field E] [Algebra F E] {K : Type u_3} [Field K] [Algebra F K] [Algebra E K] [IsScalarTower F E K] (L : IntermediateField F K) [halg : Algebra.IsAlgebraic F E]
Goal: (IntermediateField.adjoin E ↑L).toSubalgebra = Algebra.adjoin E ↑L
-- IntermediateField.adjoin_toSubalgebra_of_isAlgebraic_right
theorem adjoin_toSubalgebra_of_isAlgebraic_right (L : IntermediateField F K)
    [halg : Algebra.IsAlgebraic F L] :
    (adjoin E (L : Set K)).toSubalgebra = Algebra.adjoin E (L : Set K) 
Arguments: {F : Type u_1} [Field F] (E : Type u_2) [Field E] [Algebra F E] {K : Type u_3} [Field K] [Algebra F K] [Algebra E K] [IsScalarTower F E K] (L : IntermediateField F K) [halg : Algebra.IsAlgebraic F ↥L]
Goal: (IntermediateField.adjoin E ↑L).toSubalgebra = Algebra.adjoin E ↑L
-- IntermediateField.adjoin_rank_le_of_isAlgebraic
theorem adjoin_rank_le_of_isAlgebraic (L : IntermediateField F K)
    (halg : Algebra.IsAlgebraic F E ∨ Algebra.IsAlgebraic F L) :
    Module.rank E (adjoin E (L : Set K)) ≤ Module.rank F L 
Arguments: {F : Type u_1} [Field F] (E : Type u_2) [Field E] [Algebra F E] {K : Type u_3} [Field K] [Algebra F K] [Algebra E K] [IsScalarTower F E K] (L : IntermediateField F K) (halg : Algebra.IsAlgebraic F E ∨ Algebra.IsAlgebraic F ↥L)
Goal: Module.rank E ↥(IntermediateField.adjoin E ↑L) ≤ Module.rank F ↥L
-- IntermediateField.adjoin_rank_le_of_isAlgebraic_left
theorem adjoin_rank_le_of_isAlgebraic_left (L : IntermediateField F K)
    [halg : Algebra.IsAlgebraic F E] :
    Module.rank E (adjoin E (L : Set K)) ≤ Module.rank F L 
Arguments: {F : Type u_1} [Field F] (E : Type u_2) [Field E] [Algebra F E] {K : Type u_3} [Field K] [Algebra F K] [Algebra E K] [IsScalarTower F E K] (L : IntermediateField F K) [halg : Algebra.IsAlgebraic F E]
Goal: Module.rank E ↥(IntermediateField.adjoin E ↑L) ≤ Module.rank F ↥L
-- IntermediateField.adjoin_rank_le_of_isAlgebraic_right
theorem adjoin_rank_le_of_isAlgebraic_right (L : IntermediateField F K)
    [halg : Algebra.IsAlgebraic F L] :
    Module.rank E (adjoin E (L : Set K)) ≤ Module.rank F L 
Arguments: {F : Type u_1} [Field F] (E : Type u_2) [Field E] [Algebra F E] {K : Type u_3} [Field K] [Algebra F K] [Algebra E K] [IsScalarTower F E K] (L : IntermediateField F K) [halg : Algebra.IsAlgebraic F ↥L]
Goal: Module.rank E ↥(IntermediateField.adjoin E ↑L) ≤ Module.rank F ↥L
-- IntermediateField.adjoin_simple_le_iff
theorem adjoin_simple_le_iff {K : IntermediateField F E} : F⟮α⟯ ≤ K ↔ α ∈ K 
Arguments: {F : Type u_1} [Field F] {E : Type u_2} [Field E] [Algebra F E] {α : E} {K : IntermediateField F E}
Goal: F⟮α⟯ ≤ K ↔ α ∈ K
-- IntermediateField.biSup_adjoin_simple
theorem biSup_adjoin_simple : ⨆ x ∈ S, F⟮x⟯ = adjoin F S 
Arguments: {F : Type u_1} [Field F] {E : Type u_2} [Field E] [Algebra F E] (S : Set E)
Goal: ⨆ x ∈ S, F⟮x⟯ = IntermediateField.adjoin F S
-- IntermediateField.adjoin_simple_isCompactElement
theorem adjoin_simple_isCompactElement (x : E) : IsCompactElement F⟮x⟯ 
Arguments: {F : Type u_1} [Field F] {E : Type u_2} [Field E] [Algebra F E] (x : E)
Goal: CompleteLattice.IsCompactElement F⟮x⟯