@@ -158,7 +158,6 @@ private def ghostFun : π R β β β R := fun x n => aeval x.coeff (W_ β€
158158section Tactic
159159open Lean Elab Tactic
160160
161- -- porting note: removed mathport output related to meta code.
162161/-- An auxiliary tactic for proving that `ghostFun` respects the ring operations. -/
163162elab "ghost_fun_tac" Ο:term "," fn:term : tactic => do
164163 evalTactic (β `(tactic| (
@@ -219,14 +218,10 @@ private theorem ghostFun_intCast (i : β€) : ghostFun (i : π R) = i :=
219218alias ghostFun_int_cast := ghostFun_intCast
220219
221220private lemma ghostFun_nsmul (m : β) (x : WittVector p R) : ghostFun (m β’ x) = m β’ ghostFun x := by
222- -- porting note: I had to add the explicit type ascription.
223- -- This could very well be due to my poor tactic writing!
224- ghost_fun_tac m β’ (X 0 : MvPolynomial _ β€), ![x.coeff]
221+ ghost_fun_tac m β’ (X 0 ), ![x.coeff]
225222
226223private lemma ghostFun_zsmul (m : β€) (x : WittVector p R) : ghostFun (m β’ x) = m β’ ghostFun x := by
227- -- porting note: I had to add the explicit type ascription.
228- -- This could very well be due to my poor tactic writing!
229- ghost_fun_tac m β’ (X 0 : MvPolynomial _ β€), ![x.coeff]
224+ ghost_fun_tac m β’ (X 0 ), ![x.coeff]
230225
231226private theorem ghostFun_pow (m : β) : ghostFun (x ^ m) = ghostFun x ^ m := by
232227 ghost_fun_tac X 0 ^ m, ![x.coeff]
@@ -256,8 +251,6 @@ private def ghostEquiv' [Invertible (p : R)] : π R β (β β R) where
256251
257252@ [local instance ]
258253private def comm_ring_auxβ : CommRing (π (MvPolynomial R β)) :=
259- -- Porting note: no longer needed?
260- -- letI : CommRing (MvPolynomial R β) := MvPolynomial.commRing
261254 (ghostEquiv' p (MvPolynomial R β)).injective.commRing ghostFun ghostFun_zero ghostFun_one
262255 ghostFun_add ghostFun_mul ghostFun_neg ghostFun_sub ghostFun_nsmul ghostFun_zsmul
263256 ghostFun_pow ghostFun_natCast ghostFun_intCast
0 commit comments