File tree Expand file tree Collapse file tree 1 file changed +29
-0
lines changed 
Mathlib/FieldTheory/RatFunc Expand file tree Collapse file tree 1 file changed +29
-0
lines changed Original file line number Diff line number Diff line change @@ -773,6 +773,35 @@ end rank
773773
774774end  lift
775775
776+ section  IsScalarTower
777+ 
778+ /-- Let `RatFunc A / A[X] / R / R₀` be a tower. If `A[X] / R / R₀` is a scalar tower 
779+ then so is `RatFunc A / R / R₀`. -/ 
780+ instance  (R₀ R A : Type *) [CommSemiring R₀] [CommSemiring R] [CommRing A] [IsDomain A]
781+     [Algebra R₀ A[X]] [SMul R₀ R] [Algebra R A[X]] [IsScalarTower R₀ R A[X]] :
782+     IsScalarTower R₀ R (RatFunc A) := IsScalarTower.to₁₂₄ _ _ A[X] _
783+ 
784+ /-- Let `K / RatFunc A / A[X] / R` be a tower. If `K / A[X] / R` is a scalar tower 
785+ then so is `K / RatFunc A / R`. -/ 
786+ instance  (R A K : Type *) [CommRing A] [IsDomain A] [Field K] [Algebra A[X] K]
787+     [FaithfulSMul A[X] K] [CommSemiring R] [Algebra R A[X]] [SMul R K] [IsScalarTower R A[X] K] :
788+     IsScalarTower R (RatFunc A) K :=
789+   IsScalarTower.to₁₃₄ _ A[X] _ _
790+ 
791+ /-- Let `K / k / RatFunc A / A[X]` be a tower. If `K / k / A[X]` is a scalar tower 
792+ then so is `K / k / RatFunc A`. -/ 
793+ instance  (A k K : Type *) [CommRing A] [IsDomain A] [Field k] [Field K] [Algebra A[X] k]
794+     [Algebra A[X] K] [SMul k K] [FaithfulSMul A[X] k] [FaithfulSMul A[X] K]
795+     [IsScalarTower A[X] k K] : IsScalarTower (RatFunc A) k K where 
796+   smul_assoc a b c := by 
797+     induction a using RatFunc.induction_on with  | f p q hq =>
798+     rw [← smul_right_inj hq]
799+     simp_rw [← smul_assoc, Algebra.smul_def q]
800+     field_simp [hq]
801+     simp
802+ 
803+ end  IsScalarTower
804+ 
776805end  IsDomain
777806
778807end  IsFractionRing
 
 
   
 
     
   
   
          
    
    
     
    
      
     
     
    You can’t perform that action at this time.
  
 
    
  
    
      
        
     
       
      
     
   
 
    
    
  
 
  
 
     
    
0 commit comments