ruc-ai4math/mathlib_handler_benchmark_410 huggingface dataset:
-- IsIntegral.prod
theorem IsIntegral.prod {α : Type*} {s : Finset α} (f : α → A) (h : ∀ x ∈ s, IsIntegral R (f x)) :
    IsIntegral R (∏ x ∈ s, f x) 
Arguments: {R : Type u_1} {A : Type u_2} [CommRing R] [CommRing A] [Algebra R A] {α : Type u_5} {s : Finset α} (f : α → A) (h : ∀ x ∈ s, IsIntegral R (f x))
Goal: IsIntegral R (∏ x ∈ s, f x)
-- IsIntegral.sum
theorem IsIntegral.sum {α : Type*} {s : Finset α} (f : α → A) (h : ∀ x ∈ s, IsIntegral R (f x)) :
    IsIntegral R (∑ x ∈ s, f x) 
Arguments: {R : Type u_1} {A : Type u_2} [CommRing R] [CommRing A] [Algebra R A] {α : Type u_5} {s : Finset α} (f : α → A) (h : ∀ x ∈ s, IsIntegral R (f x))
Goal: IsIntegral R (∑ x ∈ s, f x)
-- IsIntegral.det
theorem IsIntegral.det {n : Type*} [Fintype n] [DecidableEq n] {M : Matrix n n A}
    (h : ∀ i j, IsIntegral R (M i j)) : IsIntegral R M.det 
Arguments: {R : Type u_1} {A : Type u_2} [CommRing R] [CommRing A] [Algebra R A] {n : Type u_5} [Fintype n] [DecidableEq n] {M : Matrix n n A} (h : ∀ (i j : n), IsIntegral R (M i j))
Goal: IsIntegral R M.det
-- IsIntegral.pow_iff
@[simp]
theorem IsIntegral.pow_iff {x : A} {n : ℕ} (hn : 0 < n) : IsIntegral R (x ^ n) ↔ IsIntegral R x 
Arguments: {R : Type u_1} {A : Type u_2} [CommRing R] [CommRing A] [Algebra R A] {x : A} {n : ℕ} (hn : 0 < n)
Goal: IsIntegral R (x ^ n) ↔ IsIntegral R x
-- IsIntegral.tmul
theorem IsIntegral.tmul (x : A) {y : B} (h : IsIntegral R y) : IsIntegral A (x ⊗ₜ[R] y) 
Arguments: {R : Type u_1} {A : Type u_2} {B : Type u_3} [CommRing R] [CommRing A] [Ring B] [Algebra R A] [Algebra R B] (x : A) {y : B} (h : IsIntegral R y)
Goal: IsIntegral A (x ⊗ₜ[R] y)
-- normalizeScaleRoots_coeff_mul_leadingCoeff_pow
theorem normalizeScaleRoots_coeff_mul_leadingCoeff_pow (i : ℕ) (hp : 1 ≤ natDegree p) :
    (normalizeScaleRoots p).coeff i * p.leadingCoeff ^ i =
      p.coeff i * p.leadingCoeff ^ (p.natDegree - 1) 
Arguments: {R : Type u_1} [CommRing R] (p : R[X]) (i : ℕ) (hp : 1 ≤ p.natDegree)
Goal: (normalizeScaleRoots p).coeff i * p.leadingCoeff ^ i = p.coeff i * p.leadingCoeff ^ (p.natDegree - 1)
-- leadingCoeff_smul_normalizeScaleRoots
theorem leadingCoeff_smul_normalizeScaleRoots (p : R[X]) :
    p.leadingCoeff • normalizeScaleRoots p = scaleRoots p p.leadingCoeff 
Arguments: {R : Type u_1} [CommRing R] (p : R[X])
Goal: p.leadingCoeff • normalizeScaleRoots p = p.scaleRoots p.leadingCoeff
-- normalizeScaleRoots_support
theorem normalizeScaleRoots_support : (normalizeScaleRoots p).support ≤ p.support 
Arguments: {R : Type u_1} [CommRing R] (p : R[X])
Goal: (normalizeScaleRoots p).support ≤ p.support
-- normalizeScaleRoots_degree
theorem normalizeScaleRoots_degree : (normalizeScaleRoots p).degree = p.degree 
Arguments: {R : Type u_1} [CommRing R] (p : R[X])
Goal: (normalizeScaleRoots p).degree = p.degree
-- normalizeScaleRoots_eval₂_leadingCoeff_mul
theorem normalizeScaleRoots_eval₂_leadingCoeff_mul (h : 1 ≤ p.natDegree) (f : R →+* S) (x : S) :
    (normalizeScaleRoots p).eval₂ f (f p.leadingCoeff * x) =
      f p.leadingCoeff ^ (p.natDegree - 1) * p.eval₂ f x 
Arguments: {R : Type u_1} {S : Type u_4} [CommRing R] [CommRing S] (p : R[X]) (h : 1 ≤ p.natDegree) (f : R →+* S) (x : S)
Goal: Polynomial.eval₂ f (f p.leadingCoeff * x) (normalizeScaleRoots p) =
  f p.leadingCoeff ^ (p.natDegree - 1) * Polynomial.eval₂ f x p
-- normalizeScaleRoots_monic
theorem normalizeScaleRoots_monic (h : p ≠ 0) : (normalizeScaleRoots p).Monic 
Arguments: {R : Type u_1} [CommRing R] (p : R[X]) (h : p ≠ 0)
Goal: (normalizeScaleRoots p).Monic
-- RingHom.isIntegralElem_leadingCoeff_mul
theorem RingHom.isIntegralElem_leadingCoeff_mul (h : p.eval₂ f x = 0) :
    f.IsIntegralElem (f p.leadingCoeff * x) 
Arguments: {R : Type u_1} {S : Type u_4} [CommRing R] [CommRing S] (f : R →+* S) (p : R[X]) (x : S) (h : Polynomial.eval₂ f x p = 0)
Goal: f.IsIntegralElem (f p.leadingCoeff * x)
-- isIntegral_leadingCoeff_smul
theorem isIntegral_leadingCoeff_smul [Algebra R S] (h : aeval x p = 0) :
    IsIntegral R (p.leadingCoeff • x) 
Arguments: {R : Type u_1} {S : Type u_4} [CommRing R] [CommRing S] (p : R[X]) (x : S) [Algebra R S] (h : (Polynomial.aeval x) p = 0)
Goal: IsIntegral R (p.leadingCoeff • x)
-- IsIntegralClosure.algebraMap_injective
theorem algebraMap_injective (A R B : Type*) [CommRing R] [CommSemiring A] [CommRing B]
    [Algebra R B] [Algebra A B] [IsIntegralClosure A R B] : Function.Injective (algebraMap A B) 
Arguments: (A : Type u_1) (R : Type u_2) (B : Type u_3) [CommRing R] [CommSemiring A] [CommRing B] [Algebra R B] [Algebra A B] [IsIntegralClosure A R B]
Goal: Function.Injective ⇑(algebraMap A B)
-- IsIntegralClosure.isIntegral
protected theorem isIntegral [Algebra R A] [IsScalarTower R A B] (x : A) : IsIntegral R x 
Arguments: (R : Type u_1) {A : Type u_2} (B : Type u_3) [CommRing R] [CommRing A] [CommRing B] [Algebra R B] [Algebra A B] [IsIntegralClosure A R B] [Algebra R A] [IsScalarTower R A B] (x : A)
Goal: IsIntegral R x
-- IsIntegralClosure.isIntegral_algebra
theorem isIntegral_algebra [Algebra R A] [IsScalarTower R A B] : Algebra.IsIntegral R A 
Arguments: (R : Type u_1) {A : Type u_2} (B : Type u_3) [CommRing R] [CommRing A] [CommRing B] [Algebra R B] [Algebra A B] [IsIntegralClosure A R B] [Algebra R A] [IsScalarTower R A B]
Goal: Algebra.IsIntegral R A
-- IsIntegralClosure.noZeroSMulDivisors
theorem noZeroSMulDivisors [Algebra R A] [IsScalarTower R A B] [NoZeroSMulDivisors R B] :
    NoZeroSMulDivisors R A 
Arguments: (R : Type u_1) {A : Type u_2} (B : Type u_3) [CommRing R] [CommRing A] [CommRing B] [Algebra R B] [Algebra A B] [IsIntegralClosure A R B] [Algebra R A] [IsScalarTower R A B] [NoZeroSMulDivisors R B]
Goal: NoZeroSMulDivisors R A
-- IsIntegralClosure.algebraMap_mk'
@[simp]
theorem algebraMap_mk' (x : B) (hx : IsIntegral R x) : algebraMap A B (mk' A x hx) = x 
Arguments: {R : Type u_1} (A : Type u_2) {B : Type u_3} [CommRing R] [CommRing A] [CommRing B] [Algebra R B] [Algebra A B] [IsIntegralClosure A R B] (x : B) (hx : IsIntegral R x)
Goal: (algebraMap A B) (IsIntegralClosure.mk' A x hx) = x
-- IsIntegralClosure.mk'_one
@[simp]
theorem mk'_one (h : IsIntegral R (1 : B) := isIntegral_one) : mk' A 1 h = 1 
Arguments: {R : Type u_1} (A : Type u_2) {B : Type u_3} [CommRing R] [CommRing A] [CommRing B] [Algebra R B] [Algebra A B] [IsIntegralClosure A R B] (h : IsIntegral R 1 := ⋯)
Goal: IsIntegralClosure.mk' A 1 h = 1
-- IsIntegralClosure.mk'_zero
@[simp]
theorem mk'_zero (h : IsIntegral R (0 : B) := isIntegral_zero) : mk' A 0 h = 0 
Arguments: {R : Type u_1} (A : Type u_2) {B : Type u_3} [CommRing R] [CommRing A] [CommRing B] [Algebra R B] [Algebra A B] [IsIntegralClosure A R B] (h : IsIntegral R 0 := ⋯)
Goal: IsIntegralClosure.mk' A 0 h = 0
-- IsIntegralClosure.mk'_add
theorem mk'_add (x y : B) (hx : IsIntegral R x) (hy : IsIntegral R y) :
    mk' A (x + y) (hx.add hy) = mk' A x hx + mk' A y hy 
Arguments: {R : Type u_1} (A : Type u_2) {B : Type u_3} [CommRing R] [CommRing A] [CommRing B] [Algebra R B] [Algebra A B] [IsIntegralClosure A R B] (x y : B) (hx : IsIntegral R x) (hy : IsIntegral R y)
Goal: IsIntegralClosure.mk' A (x + y) ⋯ = IsIntegralClosure.mk' A x hx + IsIntegralClosure.mk' A y hy
-- IsIntegralClosure.mk'_mul
theorem mk'_mul (x y : B) (hx : IsIntegral R x) (hy : IsIntegral R y) :
    mk' A (x * y) (hx.mul hy) = mk' A x hx * mk' A y hy 
Arguments: {R : Type u_1} (A : Type u_2) {B : Type u_3} [CommRing R] [CommRing A] [CommRing B] [Algebra R B] [Algebra A B] [IsIntegralClosure A R B] (x y : B) (hx : IsIntegral R x) (hy : IsIntegral R y)
Goal: IsIntegralClosure.mk' A (x * y) ⋯ = IsIntegralClosure.mk' A x hx * IsIntegralClosure.mk' A y hy
-- IsIntegralClosure.mk'_algebraMap
@[simp]
theorem mk'_algebraMap [Algebra R A] [IsScalarTower R A B] (x : R)
    (h : IsIntegral R (algebraMap R B x) := isIntegral_algebraMap) :
    IsIntegralClosure.mk' A (algebraMap R B x) h = algebraMap R A x 
Arguments: {R : Type u_1} (A : Type u_2) {B : Type u_3} [CommRing R] [CommRing A] [CommRing B] [Algebra R B] [Algebra A B] [IsIntegralClosure A R B] [Algebra R A] [IsScalarTower R A B] (x : R) (h : IsIntegral R ((algebraMap R B) x) := ⋯)
Goal: IsIntegralClosure.mk' A ((algebraMap R B) x) h = (algebraMap R A) x
-- IsIntegralClosure.algebraMap_lift
@[simp]
theorem algebraMap_lift (x : S) : algebraMap A B (lift R A B x) = algebraMap S B x 
Arguments: (R : Type u_1) (A : Type u_2) (B : Type u_3) [CommRing R] [CommRing A] [CommRing B] [Algebra R B] [Algebra A B] [IsIntegralClosure A R B] {S : Type u_4} [CommRing S] [Algebra R S] [Algebra S B] [IsScalarTower R S B] [Algebra R A] [IsScalarTower R A B] [isIntegral : Algebra.IsIntegral R S] (x : S)
Goal: (algebraMap A B) ((IsIntegralClosure.lift R A B) x) = (algebraMap S B) x
-- IsIntegralClosure.algebraMap_equiv
@[simp]
theorem algebraMap_equiv (x : A) : algebraMap A' B (equiv R A B A' x) = algebraMap A B x 
Arguments: (R : Type u_1) (A : Type u_2) (B : Type u_3) [CommRing R] [CommRing A] [CommRing B] [Algebra R B] [Algebra A B] [IsIntegralClosure A R B] (A' : Type u_4) [CommRing A'] [Algebra A' B] [IsIntegralClosure A' R B] [Algebra R A] [Algebra R A'] [IsScalarTower R A B] [IsScalarTower R A' B] (x : A)
Goal: (algebraMap A' B) ((IsIntegralClosure.equiv R A B A') x) = (algebraMap A B) x
-- isIntegral_trans
theorem isIntegral_trans [Algebra.IsIntegral R A] (x : B) (hx : IsIntegral A x) :
    IsIntegral R x 
Arguments: {R : Type u_1} {A : Type u_2} {B : Type u_3} [CommRing R] [CommRing A] [Ring B] [Algebra A B] [Algebra R B] [Algebra R A] [IsScalarTower R A B] [Algebra.IsIntegral R A] (x : B) (hx : IsIntegral A x)
Goal: IsIntegral R x
-- Algebra.IsIntegral.trans
protected theorem Algebra.IsIntegral.trans
    [Algebra.IsIntegral R A] [Algebra.IsIntegral A B] : Algebra.IsIntegral R B 
Arguments: {R : Type u_1} (A : Type u_2) {B : Type u_3} [CommRing R] [CommRing A] [Ring B] [Algebra A B] [Algebra R B] [Algebra R A] [IsScalarTower R A B] [Algebra.IsIntegral R A] [Algebra.IsIntegral A B]
Goal: Algebra.IsIntegral R B
-- RingHom.IsIntegral.trans
protected theorem RingHom.IsIntegral.trans
    (hf : f.IsIntegral) (hg : g.IsIntegral) : (g.comp f).IsIntegral 
Arguments: {R : Type u_1} {S : Type u_4} {T : Type u_5} [CommRing R] [CommRing S] [CommRing T] (f : R →+* S) (g : S →+* T) (hf : f.IsIntegral) (hg : g.IsIntegral)
Goal: (g.comp f).IsIntegral
-- IsIntegralClosure.tower_top
lemma IsIntegralClosure.tower_top {B C : Type*} [CommRing C] [CommRing B]
    [Algebra R B] [Algebra A B] [Algebra C B] [IsScalarTower R A B]
    [IsIntegralClosure C R B] [Algebra.IsIntegral R A] :
    IsIntegralClosure C A B 
Arguments: {R : Type u_1} {A : Type u_2} [CommRing R] [CommRing A] [Algebra R A] {B : Type u_6} {C : Type u_7} [CommRing C] [CommRing B] [Algebra R B] [Algebra A B] [Algebra C B] [IsScalarTower R A B] [IsIntegralClosure C R B] [Algebra.IsIntegral R A]
Goal: IsIntegralClosure C A B
-- RingHom.isIntegral_of_surjective
theorem RingHom.isIntegral_of_surjective (hf : Function.Surjective f) : f.IsIntegral 
Arguments: {R : Type u_1} {S : Type u_4} [CommRing R] [CommRing S] (f : R →+* S) (hf : Function.Surjective ⇑f)
Goal: f.IsIntegral
-- Algebra.isIntegral_of_surjective
theorem Algebra.isIntegral_of_surjective (h : Function.Surjective (algebraMap R A)) :
    Algebra.IsIntegral R A 
Arguments: {R : Type u_1} {A : Type u_2} [CommRing R] [CommRing A] [Algebra R A] (h : Function.Surjective ⇑(algebraMap R A))
Goal: Algebra.IsIntegral R A
-- IsIntegral.tower_bot
theorem IsIntegral.tower_bot (H : Function.Injective (algebraMap A B)) {x : A}
    (h : IsIntegral R (algebraMap A B x)) : IsIntegral R x 
Arguments: {R : Type u_1} {A : Type u_2} {B : Type u_3} [CommRing R] [CommRing A] [Ring B] [Algebra A B] [Algebra R B] [Algebra R A] [IsScalarTower R A B] (H : Function.Injective ⇑(algebraMap A B)) {x : A} (h : IsIntegral R ((algebraMap A B) x))
Goal: IsIntegral R x
-- RingHom.IsIntegral.tower_bot
nonrec theorem RingHom.IsIntegral.tower_bot (hg : Function.Injective g)
    (hfg : (g.comp f).IsIntegral) : f.IsIntegral 
Arguments: {R : Type u_1} {S : Type u_4} {T : Type u_5} [CommRing R] [CommRing S] [CommRing T] (f : R →+* S) (g : S →+* T) (hg : Function.Injective ⇑g) (hfg : (g.comp f).IsIntegral)
Goal: f.IsIntegral
-- IsIntegral.tower_bot_of_field
theorem IsIntegral.tower_bot_of_field {R A B : Type*} [CommRing R] [Field A]
    [CommRing B] [Nontrivial B] [Algebra R A] [Algebra A B] [Algebra R B] [IsScalarTower R A B]
    {x : A} (h : IsIntegral R (algebraMap A B x)) : IsIntegral R x 
Arguments: {R : Type u_6} {A : Type u_7} {B : Type u_8} [CommRing R] [Field A] [CommRing B] [Nontrivial B] [Algebra R A] [Algebra A B] [Algebra R B] [IsScalarTower R A B] {x : A} (h : IsIntegral R ((algebraMap A B) x))
Goal: IsIntegral R x
-- RingHom.isIntegralElem.of_comp
theorem RingHom.isIntegralElem.of_comp {x : T} (h : (g.comp f).IsIntegralElem x) :
    g.IsIntegralElem x 
Arguments: {R : Type u_1} {S : Type u_4} {T : Type u_5} [CommRing R] [CommRing S] [CommRing T] (f : R →+* S) (g : S →+* T) {x : T} (h : (g.comp f).IsIntegralElem x)
Goal: g.IsIntegralElem x
-- RingHom.IsIntegral.tower_top
theorem RingHom.IsIntegral.tower_top (h : (g.comp f).IsIntegral) : g.IsIntegral 
Arguments: {R : Type u_1} {S : Type u_4} {T : Type u_5} [CommRing R] [CommRing S] [CommRing T] (f : R →+* S) (g : S →+* T) (h : (g.comp f).IsIntegral)
Goal: g.IsIntegral
-- RingHom.IsIntegral.quotient
theorem RingHom.IsIntegral.quotient {I : Ideal S} (hf : f.IsIntegral) :
    (Ideal.quotientMap I f le_rfl).IsIntegral 
Arguments: {R : Type u_1} {S : Type u_4} [CommRing R] [CommRing S] (f : R →+* S) {I : Ideal S} (hf : f.IsIntegral)
Goal: (Ideal.quotientMap I f ⋯).IsIntegral
-- isIntegral_quotientMap_iff
theorem isIntegral_quotientMap_iff {I : Ideal S} :
    (Ideal.quotientMap I f le_rfl).IsIntegral ↔
      ((Ideal.Quotient.mk I).comp f : R →+* S ⧸ I).IsIntegral 
Arguments: {R : Type u_1} {S : Type u_4} [CommRing R] [CommRing S] (f : R →+* S) {I : Ideal S}
Goal: (Ideal.quotientMap I f ⋯).IsIntegral ↔ ((Ideal.Quotient.mk I).comp f).IsIntegral
-- isField_of_isIntegral_of_isField
theorem isField_of_isIntegral_of_isField {R S : Type*} [CommRing R] [CommRing S]
    [Algebra R S] [Algebra.IsIntegral R S]
    (hRS : Function.Injective (algebraMap R S)) (hS : IsField S) : IsField R 
Arguments: {R : Type u_6} {S : Type u_7} [CommRing R] [CommRing S] [Algebra R S] [Algebra.IsIntegral R S] (hRS : Function.Injective ⇑(algebraMap R S)) (hS : IsField S)
Goal: IsField R
-- isField_of_isIntegral_of_isField'
theorem isField_of_isIntegral_of_isField' {R S : Type*} [CommRing R] [CommRing S] [IsDomain S]
    [Algebra R S] [Algebra.IsIntegral R S] (hR : IsField R) : IsField S 
Arguments: {R : Type u_6} {S : Type u_7} [CommRing R] [CommRing S] [IsDomain S] [Algebra R S] [Algebra.IsIntegral R S] (hR : IsField R)
Goal: IsField S
-- Algebra.IsIntegral.isField_iff_isField
theorem Algebra.IsIntegral.isField_iff_isField {R S : Type*} [CommRing R]
    [CommRing S] [IsDomain S] [Algebra R S] [Algebra.IsIntegral R S]
    (hRS : Function.Injective (algebraMap R S)) : IsField R ↔ IsField S 
Arguments: {R : Type u_6} {S : Type u_7} [CommRing R] [CommRing S] [IsDomain S] [Algebra R S] [Algebra.IsIntegral R S] (hRS : Function.Injective ⇑(algebraMap R S))
Goal: IsField R ↔ IsField S
-- integralClosure_idem
theorem integralClosure_idem {R A : Type*} [CommRing R] [CommRing A] [Algebra R A] :
    integralClosure (integralClosure R A : Set A) A = ⊥ 
Arguments: {R : Type u_1} {A : Type u_2} [CommRing R] [CommRing A] [Algebra R A]
Goal: integralClosure (↑↑(integralClosure R A)) A = ⊥
-- roots_mem_integralClosure
theorem roots_mem_integralClosure {f : R[X]} (hf : f.Monic) {a : S}
    (ha : a ∈ f.aroots S) : a ∈ integralClosure R S 
Arguments: {R : Type u_1} {S : Type u_2} [CommRing R] [CommRing S] [IsDomain S] [Algebra R S] {f : R[X]} (hf : f.Monic) {a : S} (ha : a ∈ f.aroots S)
Goal: a ∈ integralClosure R S
-- CliffordAlgebra.involute_ι
@[simp]
theorem involute_ι (m : M) : involute (ι Q m) = -ι Q m 
Arguments: {R : Type u_1} [CommRing R] {M : Type u_2} [AddCommGroup M] [Module R M] {Q : QuadraticForm R M} (m : M)
Goal: CliffordAlgebra.involute ((CliffordAlgebra.ι Q) m) = -(CliffordAlgebra.ι Q) m
-- CliffordAlgebra.involute_comp_involute
@[simp]
theorem involute_comp_involute : involute.comp involute = AlgHom.id R (CliffordAlgebra Q) 
Arguments: {R : Type u_1} [CommRing R] {M : Type u_2} [AddCommGroup M] [Module R M] {Q : QuadraticForm R M}
Goal: CliffordAlgebra.involute.comp CliffordAlgebra.involute = AlgHom.id R (CliffordAlgebra Q)
-- CliffordAlgebra.involute_involutive
theorem involute_involutive : Function.Involutive (involute : _ → CliffordAlgebra Q) 
Arguments: {R : Type u_1} [CommRing R] {M : Type u_2} [AddCommGroup M] [Module R M] {Q : QuadraticForm R M}
Goal: Function.Involutive ⇑CliffordAlgebra.involute
-- CliffordAlgebra.involute_involute
@[simp]
theorem involute_involute : ∀ a : CliffordAlgebra Q, involute (involute a) = a 
Arguments: {R : Type u_1} [CommRing R] {M : Type u_2} [AddCommGroup M] [Module R M] {Q : QuadraticForm R M} (a : CliffordAlgebra Q)
Goal: CliffordAlgebra.involute (CliffordAlgebra.involute a) = a
-- CliffordAlgebra.involuteEquiv_apply
@[simps!]
def involuteEquiv : CliffordAlgebra Q ≃ₐ[R] CliffordAlgebra Q 
Arguments: {R : Type u_1} [CommRing R] {M : Type u_2} [AddCommGroup M] [Module R M] {Q : QuadraticForm R M} (a : CliffordAlgebra Q)
Goal: CliffordAlgebra.involuteEquiv a = CliffordAlgebra.involute a
-- CliffordAlgebra.involuteEquiv_symm_apply
@[simps!]
def involuteEquiv : CliffordAlgebra Q ≃ₐ[R] CliffordAlgebra Q 
Arguments: {R : Type u_1} [CommRing R] {M : Type u_2} [AddCommGroup M] [Module R M] {Q : QuadraticForm R M} (a : CliffordAlgebra Q)
Goal: CliffordAlgebra.involuteEquiv.symm a = CliffordAlgebra.involute a
-- CliffordAlgebra.reverseOp_ι
@[simp]
theorem reverseOp_ι (m : M) : reverseOp (ι Q m) = op (ι Q m) 
Arguments: {R : Type u_1} [CommRing R] {M : Type u_2} [AddCommGroup M] [Module R M] {Q : QuadraticForm R M} (m : M)
Goal: CliffordAlgebra.reverseOp ((CliffordAlgebra.ι Q) m) = MulOpposite.op ((CliffordAlgebra.ι Q) m)
-- CliffordAlgebra.reverseOpEquiv_apply
@[simps! apply]
def reverseOpEquiv : CliffordAlgebra Q ≃ₐ[R] (CliffordAlgebra Q)ᵐᵒᵖ 
Arguments: {R : Type u_1} [CommRing R] {M : Type u_2} [AddCommGroup M] [Module R M] {Q : QuadraticForm R M} (a : CliffordAlgebra Q)
Goal: CliffordAlgebra.reverseOpEquiv a = CliffordAlgebra.reverseOp a
-- CliffordAlgebra.reverseOpEquiv_opComm
@[simp]
theorem reverseOpEquiv_opComm :
    AlgEquiv.opComm (reverseOpEquiv (Q := Q)) = reverseOpEquiv.symm 
Arguments: {R : Type u_1} [CommRing R] {M : Type u_2} [AddCommGroup M] [Module R M] {Q : QuadraticForm R M}
Goal: AlgEquiv.opComm CliffordAlgebra.reverseOpEquiv = CliffordAlgebra.reverseOpEquiv.symm
-- CliffordAlgebra.unop_reverseOp
@[simp] theorem unop_reverseOp (x : CliffordAlgebra Q) : (reverseOp x).unop = reverse x 
Arguments: {R : Type u_1} [CommRing R] {M : Type u_2} [AddCommGroup M] [Module R M] {Q : QuadraticForm R M} (x : CliffordAlgebra Q)
Goal: MulOpposite.unop (CliffordAlgebra.reverseOp x) = CliffordAlgebra.reverse x
-- CliffordAlgebra.op_reverse
@[simp] theorem op_reverse (x : CliffordAlgebra Q) : op (reverse x) = reverseOp x 
Arguments: {R : Type u_1} [CommRing R] {M : Type u_2} [AddCommGroup M] [Module R M] {Q : QuadraticForm R M} (x : CliffordAlgebra Q)
Goal: MulOpposite.op (CliffordAlgebra.reverse x) = CliffordAlgebra.reverseOp x
-- CliffordAlgebra.reverse_ι
@[simp]
theorem reverse_ι (m : M) : reverse (ι Q m) = ι Q m 
Arguments: {R : Type u_1} [CommRing R] {M : Type u_2} [AddCommGroup M] [Module R M] {Q : QuadraticForm R M} (m : M)
Goal: CliffordAlgebra.reverse ((CliffordAlgebra.ι Q) m) = (CliffordAlgebra.ι Q) m
-- CliffordAlgebra.reverse.commutes
@[simp]
theorem reverse.commutes (r : R) :
    reverse (algebraMap R (CliffordAlgebra Q) r) = algebraMap R _ r 
Arguments: {R : Type u_1} [CommRing R] {M : Type u_2} [AddCommGroup M] [Module R M] {Q : QuadraticForm R M} (r : R)
Goal: CliffordAlgebra.reverse ((algebraMap R (CliffordAlgebra Q)) r) = (algebraMap R (CliffordAlgebra Q)) r
-- CliffordAlgebra.reverse.map_one
@[simp]
theorem reverse.map_one : reverse (1 : CliffordAlgebra Q) = 1 
Arguments: {R : Type u_1} [CommRing R] {M : Type u_2} [AddCommGroup M] [Module R M] {Q : QuadraticForm R M}
Goal: CliffordAlgebra.reverse 1 = 1
-- CliffordAlgebra.reverse.map_mul
@[simp]
theorem reverse.map_mul (a b : CliffordAlgebra Q) :
    reverse (a * b) = reverse b * reverse a 
Arguments: {R : Type u_1} [CommRing R] {M : Type u_2} [AddCommGroup M] [Module R M] {Q : QuadraticForm R M} (a b : CliffordAlgebra Q)
Goal: CliffordAlgebra.reverse (a * b) = CliffordAlgebra.reverse b * CliffordAlgebra.reverse a
-- CliffordAlgebra.reverse_involutive
@[simp]
theorem reverse_involutive : Function.Involutive (reverse (Q := Q)) 
Arguments: {R : Type u_1} [CommRing R] {M : Type u_2} [AddCommGroup M] [Module R M] {Q : QuadraticForm R M}
Goal: Function.Involutive ⇑CliffordAlgebra.reverse
-- CliffordAlgebra.reverse_comp_reverse
@[simp]
theorem reverse_comp_reverse :
    reverse.comp reverse = (LinearMap.id : _ →ₗ[R] CliffordAlgebra Q) 
Arguments: {R : Type u_1} [CommRing R] {M : Type u_2} [AddCommGroup M] [Module R M] {Q : QuadraticForm R M}
Goal: CliffordAlgebra.reverse ∘ₗ CliffordAlgebra.reverse = LinearMap.id
-- CliffordAlgebra.reverse_reverse
@[simp]
theorem reverse_reverse : ∀ a : CliffordAlgebra Q, reverse (reverse a) = a 
Arguments: {R : Type u_1} [CommRing R] {M : Type u_2} [AddCommGroup M] [Module R M] {Q : QuadraticForm R M} (a : CliffordAlgebra Q)
Goal: CliffordAlgebra.reverse (CliffordAlgebra.reverse a) = a
-- CliffordAlgebra.reverseEquiv_apply
@[simps!]
def reverseEquiv : CliffordAlgebra Q ≃ₗ[R] CliffordAlgebra Q 
Arguments: {R : Type u_1} [CommRing R] {M : Type u_2} [AddCommGroup M] [Module R M] {Q : QuadraticForm R M}
Goal: ∀ (a : CliffordAlgebra Q), CliffordAlgebra.reverseEquiv a = CliffordAlgebra.reverse a
-- CliffordAlgebra.reverseEquiv_symm_apply
@[simps!]
def reverseEquiv : CliffordAlgebra Q ≃ₗ[R] CliffordAlgebra Q 
Arguments: {R : Type u_1} [CommRing R] {M : Type u_2} [AddCommGroup M] [Module R M] {Q : QuadraticForm R M}
Goal: ∀ (a : CliffordAlgebra Q), CliffordAlgebra.reverseEquiv.symm a = CliffordAlgebra.reverse a
-- CliffordAlgebra.reverse_comp_involute
theorem reverse_comp_involute :
    reverse.comp involute.toLinearMap =
      (involute.toLinearMap.comp reverse : _ →ₗ[R] CliffordAlgebra Q) 
Arguments: {R : Type u_1} [CommRing R] {M : Type u_2} [AddCommGroup M] [Module R M] {Q : QuadraticForm R M}
Goal: CliffordAlgebra.reverse ∘ₗ CliffordAlgebra.involute.toLinearMap =
  CliffordAlgebra.involute.toLinearMap ∘ₗ CliffordAlgebra.reverse
-- CliffordAlgebra.reverse_involute_commute
theorem reverse_involute_commute : Function.Commute (reverse (Q := Q)) involute 
Arguments: {R : Type u_1} [CommRing R] {M : Type u_2} [AddCommGroup M] [Module R M] {Q : QuadraticForm R M}
Goal: Function.Commute ⇑CliffordAlgebra.reverse ⇑CliffordAlgebra.involute
-- CliffordAlgebra.reverse_involute
theorem reverse_involute :
    ∀ a : CliffordAlgebra Q, reverse (involute a) = involute (reverse a) 
Arguments: {R : Type u_1} [CommRing R] {M : Type u_2} [AddCommGroup M] [Module R M] {Q : QuadraticForm R M} (a : CliffordAlgebra Q)
Goal: CliffordAlgebra.reverse (CliffordAlgebra.involute a) = CliffordAlgebra.involute (CliffordAlgebra.reverse a)
-- CliffordAlgebra.reverse_prod_map_ι
theorem reverse_prod_map_ι :
    ∀ l : List M, reverse (l.map <| ι Q).prod = (l.map <| ι Q).reverse.prod
  
Arguments: {R : Type u_1} [CommRing R] {M : Type u_2} [AddCommGroup M] [Module R M] {Q : QuadraticForm R M} (l : List M)
Goal: CliffordAlgebra.reverse (List.map (⇑(CliffordAlgebra.ι Q)) l).prod = (List.map (⇑(CliffordAlgebra.ι Q)) l).reverse.prod
-- CliffordAlgebra.involute_prod_map_ι
theorem involute_prod_map_ι :
    ∀ l : List M, involute (l.map <| ι Q).prod = (-1 : R) ^ l.length • (l.map <| ι Q).prod
  
Arguments: {R : Type u_1} [CommRing R] {M : Type u_2} [AddCommGroup M] [Module R M] {Q : QuadraticForm R M} (l : List M)
Goal: CliffordAlgebra.involute (List.map (⇑(CliffordAlgebra.ι Q)) l).prod =
  (-1) ^ l.length • (List.map (⇑(CliffordAlgebra.ι Q)) l).prod