ruc-ai4math/mathlib_handler_benchmark_410 huggingface dataset:
-- LinearMap.IsProj.isCompl
theorem isCompl {f : E →ₗ[R] E} (h : IsProj p f) : IsCompl p (ker f) 
Arguments: {R : Type u_1} [Ring R] {E : Type u_2} [AddCommGroup E] [Module R E] {p : Submodule R E} {f : E →ₗ[R] E} (h : LinearMap.IsProj p f)
Goal: IsCompl p (LinearMap.ker f)
-- LinearMap.IsProj.eq_conj_prod_map'
theorem eq_conj_prod_map' {f : E →ₗ[R] E} (h : IsProj p f) :
    f = (p.prodEquivOfIsCompl (ker f) h.isCompl).toLinearMap ∘ₗ
        prodMap id 0 ∘ₗ (p.prodEquivOfIsCompl (ker f) h.isCompl).symm.toLinearMap 
Arguments: {R : Type u_1} [Ring R] {E : Type u_2} [AddCommGroup E] [Module R E] {p : Submodule R E} {f : E →ₗ[R] E} (h : LinearMap.IsProj p f)
Goal: f =
  ↑(p.prodEquivOfIsCompl (LinearMap.ker f) ⋯) ∘ₗ
    LinearMap.id.prodMap 0 ∘ₗ ↑(p.prodEquivOfIsCompl (LinearMap.ker f) ⋯).symm
-- LinearMap.IsProj.eq_conj_prodMap
theorem IsProj.eq_conj_prodMap {f : E →ₗ[R] E} (h : IsProj p f) :
    f = (p.prodEquivOfIsCompl (ker f) h.isCompl).conj (prodMap id 0) 
Arguments: {R : Type u_1} [CommRing R] {E : Type u_2} [AddCommGroup E] [Module R E] {p : Submodule R E} {f : E →ₗ[R] E} (h : LinearMap.IsProj p f)
Goal: f = (p.prodEquivOfIsCompl (LinearMap.ker f) ⋯).conj (LinearMap.id.prodMap 0)
-- QuadraticMap.toBilin_apply
theorem toBilin_apply (Q : QuadraticMap R M N) (bm : Basis ι R M) (i j : ι) :
    Q.toBilin bm (bm i) (bm j) =
      if i = j then Q (bm i) else if i < j then polar Q (bm i) (bm j) else 0 
Arguments: {ι : Type u_4} {R : Type u_1} {M : Type u_2} {N : Type u_3} [LinearOrder ι] [CommRing R] [AddCommGroup M] [AddCommGroup N] [Module R M] [Module R N] (Q : QuadraticMap R M N) (bm : Basis ι R M) (i j : ι)
Goal: ((Q.toBilin bm) (bm i)) (bm j) = if i = j then Q (bm i) else if i < j then QuadraticMap.polar (⇑Q) (bm i) (bm j) else 0
-- QuadraticMap.toQuadraticMap_toBilin
theorem toQuadraticMap_toBilin (Q : QuadraticMap R M N) (bm : Basis ι R M) :
    (Q.toBilin bm).toQuadraticMap = Q 
Arguments: {ι : Type u_4} {R : Type u_1} {M : Type u_2} {N : Type u_3} [LinearOrder ι] [CommRing R] [AddCommGroup M] [AddCommGroup N] [Module R M] [Module R N] (Q : QuadraticMap R M N) (bm : Basis ι R M)
Goal: (Q.toBilin bm).toQuadraticMap = Q
-- LinearMap.BilinMap.toQuadraticMap_surjective
theorem _root_.LinearMap.BilinMap.toQuadraticMap_surjective [Module.Free R M] :
    Function.Surjective (LinearMap.BilinMap.toQuadraticMap : LinearMap.BilinMap R M N → _) 
Arguments: {R : Type u_1} {M : Type u_2} {N : Type u_3} [CommRing R] [AddCommGroup M] [AddCommGroup N] [Module R M] [Module R N] [Module.Free R M]
Goal: Function.Surjective LinearMap.BilinMap.toQuadraticMap
-- CliffordAlgebraRing.ι_eq_zero
@[simp]
theorem ι_eq_zero : ι (0 : QuadraticForm R Unit) = 0 
Arguments: {R : Type u_1} [CommRing R]
Goal: CliffordAlgebra.ι 0 = 0
-- CliffordAlgebraRing.reverse_apply
theorem reverse_apply (x : CliffordAlgebra (0 : QuadraticForm R Unit)) :
    reverse (R := R) x = x 
Arguments: {R : Type u_1} [CommRing R] (x : CliffordAlgebra 0)
Goal: CliffordAlgebra.reverse x = x
-- CliffordAlgebraRing.reverse_eq_id
@[simp]
theorem reverse_eq_id :
    (reverse : CliffordAlgebra (0 : QuadraticForm R Unit) →ₗ[R] _) = LinearMap.id 
Arguments: {R : Type u_1} [CommRing R]
Goal: CliffordAlgebra.reverse = LinearMap.id
-- CliffordAlgebraRing.involute_eq_id
@[simp]
theorem involute_eq_id :
    (involute : CliffordAlgebra (0 : QuadraticForm R Unit) →ₐ[R] _) = AlgHom.id R _ 
Arguments: {R : Type u_1} [CommRing R]
Goal: CliffordAlgebra.involute = AlgHom.id R (CliffordAlgebra 0)
-- CliffordAlgebraComplex.Q_apply
@[simp]
theorem Q_apply (r : ℝ) : Q r = -(r * r) 
Arguments: (r : ℝ)
Goal: CliffordAlgebraComplex.Q r = -(r * r)
-- CliffordAlgebraComplex.toComplex_ι
@[simp]
theorem toComplex_ι (r : ℝ) : toComplex (ι Q r) = r • Complex.I 
Arguments: (r : ℝ)
Goal: CliffordAlgebraComplex.toComplex ((CliffordAlgebra.ι CliffordAlgebraComplex.Q) r) = r • Complex.I
-- CliffordAlgebraComplex.toComplex_involute
@[simp]
theorem toComplex_involute (c : CliffordAlgebra Q) :
    toComplex (involute c) = conj (toComplex c) 
Arguments: (c : CliffordAlgebra CliffordAlgebraComplex.Q)
Goal: CliffordAlgebraComplex.toComplex (CliffordAlgebra.involute c) = (starRingEnd ℂ) (CliffordAlgebraComplex.toComplex c)
-- CliffordAlgebraComplex.ofComplex_I
@[simp]
theorem ofComplex_I : ofComplex Complex.I = ι Q 1 
Goal: CliffordAlgebraComplex.ofComplex Complex.I = (CliffordAlgebra.ι CliffordAlgebraComplex.Q) 1
-- CliffordAlgebraComplex.toComplex_comp_ofComplex
@[simp]
theorem toComplex_comp_ofComplex : toComplex.comp ofComplex = AlgHom.id ℝ ℂ 
Goal: CliffordAlgebraComplex.toComplex.comp CliffordAlgebraComplex.ofComplex = AlgHom.id ℝ ℂ
-- CliffordAlgebraComplex.toComplex_ofComplex
@[simp]
theorem toComplex_ofComplex (c : ℂ) : toComplex (ofComplex c) = c 
Arguments: (c : ℂ)
Goal: CliffordAlgebraComplex.toComplex (CliffordAlgebraComplex.ofComplex c) = c
-- CliffordAlgebraComplex.ofComplex_comp_toComplex
@[simp]
theorem ofComplex_comp_toComplex : ofComplex.comp toComplex = AlgHom.id ℝ (CliffordAlgebra Q) 
Goal: CliffordAlgebraComplex.ofComplex.comp CliffordAlgebraComplex.toComplex =
  AlgHom.id ℝ (CliffordAlgebra CliffordAlgebraComplex.Q)
-- CliffordAlgebraComplex.ofComplex_toComplex
@[simp]
theorem ofComplex_toComplex (c : CliffordAlgebra Q) : ofComplex (toComplex c) = c 
Arguments: (c : CliffordAlgebra CliffordAlgebraComplex.Q)
Goal: CliffordAlgebraComplex.ofComplex (CliffordAlgebraComplex.toComplex c) = c
-- CliffordAlgebraComplex.equiv_apply
@[simps!]
protected def equiv : CliffordAlgebra Q ≃ₐ[ℝ] ℂ 
Arguments: (a : CliffordAlgebra CliffordAlgebraComplex.Q)
Goal: CliffordAlgebraComplex.equiv a = CliffordAlgebraComplex.toComplex a
-- CliffordAlgebraComplex.equiv_symm_apply
@[simps!]
protected def equiv : CliffordAlgebra Q ≃ₐ[ℝ] ℂ 
Arguments: (a : ℂ)
Goal: CliffordAlgebraComplex.equiv.symm a = CliffordAlgebraComplex.ofComplex a
-- CliffordAlgebraComplex.reverse_apply
theorem reverse_apply (x : CliffordAlgebra Q) : reverse (R := ℝ) x = x 
Arguments: (x : CliffordAlgebra CliffordAlgebraComplex.Q)
Goal: CliffordAlgebra.reverse x = x
-- CliffordAlgebraComplex.reverse_eq_id
@[simp]
theorem reverse_eq_id : (reverse : CliffordAlgebra Q →ₗ[ℝ] _) = LinearMap.id 
Goal: CliffordAlgebra.reverse = LinearMap.id
-- CliffordAlgebraComplex.ofComplex_conj
@[simp]
theorem ofComplex_conj (c : ℂ) : ofComplex (conj c) = involute (ofComplex c) 
Arguments: (c : ℂ)
Goal: CliffordAlgebraComplex.ofComplex ((starRingEnd ℂ) c) = CliffordAlgebra.involute (CliffordAlgebraComplex.ofComplex c)
-- CliffordAlgebraQuaternion.Q_apply
@[simp]
theorem Q_apply (v : R × R) : Q c₁ c₂ v = c₁ * (v.1 * v.1) + c₂ * (v.2 * v.2) 
Arguments: {R : Type u_1} [CommRing R] (c₁ c₂ : R) (v : R × R)
Goal: (CliffordAlgebraQuaternion.Q c₁ c₂) v = c₁ * (v.1 * v.1) + c₂ * (v.2 * v.2)
-- CliffordAlgebraQuaternion.quaternionBasis_i
@[simps i j k]
def quaternionBasis : QuaternionAlgebra.Basis (CliffordAlgebra (Q c₁ c₂)) c₁ c₂ 
Arguments: {R : Type u_1} [CommRing R] (c₁ c₂ : R)
Goal: (CliffordAlgebraQuaternion.quaternionBasis c₁ c₂).i = (CliffordAlgebra.ι (CliffordAlgebraQuaternion.Q c₁ c₂)) (1, 0)
-- CliffordAlgebraQuaternion.quaternionBasis_j
@[simps i j k]
def quaternionBasis : QuaternionAlgebra.Basis (CliffordAlgebra (Q c₁ c₂)) c₁ c₂ 
Arguments: {R : Type u_1} [CommRing R] (c₁ c₂ : R)
Goal: (CliffordAlgebraQuaternion.quaternionBasis c₁ c₂).j = (CliffordAlgebra.ι (CliffordAlgebraQuaternion.Q c₁ c₂)) (0, 1)
-- CliffordAlgebraQuaternion.quaternionBasis_k
@[simps i j k]
def quaternionBasis : QuaternionAlgebra.Basis (CliffordAlgebra (Q c₁ c₂)) c₁ c₂ 
Arguments: {R : Type u_1} [CommRing R] (c₁ c₂ : R)
Goal: (CliffordAlgebraQuaternion.quaternionBasis c₁ c₂).k =
  (CliffordAlgebra.ι (CliffordAlgebraQuaternion.Q c₁ c₂)) (1, 0) *
    (CliffordAlgebra.ι (CliffordAlgebraQuaternion.Q c₁ c₂)) (0, 1)
-- CliffordAlgebraQuaternion.toQuaternion_ι
@[simp]
theorem toQuaternion_ι (v : R × R) :
    toQuaternion (ι (Q c₁ c₂) v) = (⟨0, v.1, v.2, 0⟩ : ℍ[R,c₁,c₂]) 
Arguments: {R : Type u_1} [CommRing R] {c₁ c₂ : R} (v : R × R)
Goal: CliffordAlgebraQuaternion.toQuaternion ((CliffordAlgebra.ι (CliffordAlgebraQuaternion.Q c₁ c₂)) v) =
  { re := 0, imI := v.1, imJ := v.2, imK := 0 }
-- CliffordAlgebraQuaternion.toQuaternion_star
theorem toQuaternion_star (c : CliffordAlgebra (Q c₁ c₂)) :
    toQuaternion (star c) = star (toQuaternion c) 
Arguments: {R : Type u_1} [CommRing R] {c₁ c₂ : R} (c : CliffordAlgebra (CliffordAlgebraQuaternion.Q c₁ c₂))
Goal: CliffordAlgebraQuaternion.toQuaternion (star c) = star (CliffordAlgebraQuaternion.toQuaternion c)
-- CliffordAlgebraQuaternion.ofQuaternion_mk
@[simp]
theorem ofQuaternion_mk (a₁ a₂ a₃ a₄ : R) :
    ofQuaternion (⟨a₁, a₂, a₃, a₄⟩ : ℍ[R,c₁,c₂]) =
      algebraMap R _ a₁ + a₂ • ι (Q c₁ c₂) (1, 0) + a₃ • ι (Q c₁ c₂) (0, 1) +
        a₄ • (ι (Q c₁ c₂) (1, 0) * ι (Q c₁ c₂) (0, 1)) 
Arguments: {R : Type u_1} [CommRing R] {c₁ c₂ : R} (a₁ a₂ a₃ a₄ : R)
Goal: CliffordAlgebraQuaternion.ofQuaternion { re := a₁, imI := a₂, imJ := a₃, imK := a₄ } =
  (algebraMap R (CliffordAlgebra (CliffordAlgebraQuaternion.Q c₁ c₂))) a₁ +
        a₂ • (CliffordAlgebra.ι (CliffordAlgebraQuaternion.Q c₁ c₂)) (1, 0) +
      a₃ • (CliffordAlgebra.ι (CliffordAlgebraQuaternion.Q c₁ c₂)) (0, 1) +
    a₄ •
      ((CliffordAlgebra.ι (CliffordAlgebraQuaternion.Q c₁ c₂)) (1, 0) *
        (CliffordAlgebra.ι (CliffordAlgebraQuaternion.Q c₁ c₂)) (0, 1))
-- CliffordAlgebraQuaternion.ofQuaternion_comp_toQuaternion
@[simp]
theorem ofQuaternion_comp_toQuaternion :
    ofQuaternion.comp toQuaternion = AlgHom.id R (CliffordAlgebra (Q c₁ c₂)) 
Arguments: {R : Type u_1} [CommRing R] {c₁ c₂ : R}
Goal: CliffordAlgebraQuaternion.ofQuaternion.comp CliffordAlgebraQuaternion.toQuaternion =
  AlgHom.id R (CliffordAlgebra (CliffordAlgebraQuaternion.Q c₁ c₂))
-- CliffordAlgebraQuaternion.ofQuaternion_toQuaternion
@[simp]
theorem ofQuaternion_toQuaternion (c : CliffordAlgebra (Q c₁ c₂)) :
    ofQuaternion (toQuaternion c) = c 
Arguments: {R : Type u_1} [CommRing R] {c₁ c₂ : R} (c : CliffordAlgebra (CliffordAlgebraQuaternion.Q c₁ c₂))
Goal: CliffordAlgebraQuaternion.ofQuaternion (CliffordAlgebraQuaternion.toQuaternion c) = c
-- CliffordAlgebraQuaternion.toQuaternion_comp_ofQuaternion
@[simp]
theorem toQuaternion_comp_ofQuaternion :
    toQuaternion.comp ofQuaternion = AlgHom.id R ℍ[R,c₁,c₂] 
Arguments: {R : Type u_1} [CommRing R] {c₁ c₂ : R}
Goal: CliffordAlgebraQuaternion.toQuaternion.comp CliffordAlgebraQuaternion.ofQuaternion =
  AlgHom.id R (QuaternionAlgebra R c₁ c₂)
-- CliffordAlgebraQuaternion.toQuaternion_ofQuaternion
@[simp]
theorem toQuaternion_ofQuaternion (q : ℍ[R,c₁,c₂]) : toQuaternion (ofQuaternion q) = q 
Arguments: {R : Type u_1} [CommRing R] {c₁ c₂ : R} (q : QuaternionAlgebra R c₁ c₂)
Goal: CliffordAlgebraQuaternion.toQuaternion (CliffordAlgebraQuaternion.ofQuaternion q) = q
-- CliffordAlgebraQuaternion.equiv_apply
@[simps!]
protected def equiv : CliffordAlgebra (Q c₁ c₂) ≃ₐ[R] ℍ[R,c₁,c₂] 
Arguments: {R : Type u_1} [CommRing R] {c₁ c₂ : R} (a : CliffordAlgebra (CliffordAlgebraQuaternion.Q c₁ c₂))
Goal: CliffordAlgebraQuaternion.equiv a = CliffordAlgebraQuaternion.toQuaternion a
-- CliffordAlgebraQuaternion.equiv_symm_apply
@[simps!]
protected def equiv : CliffordAlgebra (Q c₁ c₂) ≃ₐ[R] ℍ[R,c₁,c₂] 
Arguments: {R : Type u_1} [CommRing R] {c₁ c₂ : R} (a : QuaternionAlgebra R c₁ c₂)
Goal: CliffordAlgebraQuaternion.equiv.symm a = CliffordAlgebraQuaternion.ofQuaternion a
-- CliffordAlgebraQuaternion.ofQuaternion_star
@[simp]
theorem ofQuaternion_star (q : ℍ[R,c₁,c₂]) : ofQuaternion (star q) = star (ofQuaternion q) 
Arguments: {R : Type u_1} [CommRing R] {c₁ c₂ : R} (q : QuaternionAlgebra R c₁ c₂)
Goal: CliffordAlgebraQuaternion.ofQuaternion (star q) = star (CliffordAlgebraQuaternion.ofQuaternion q)
-- CliffordAlgebraDualNumber.ι_mul_ι
theorem ι_mul_ι (r₁ r₂) : ι (0 : QuadraticForm R R) r₁ * ι (0 : QuadraticForm R R) r₂ = 0 
Arguments: {R : Type u_1} [CommRing R] (r₁ r₂ : R)
Goal: (CliffordAlgebra.ι 0) r₁ * (CliffordAlgebra.ι 0) r₂ = 0
-- CliffordAlgebraDualNumber.equiv_ι
@[simp]
theorem equiv_ι (r : R) : CliffordAlgebraDualNumber.equiv (ι (R := R) _ r) = r • ε 
Arguments: {R : Type u_1} [CommRing R] (r : R)
Goal: CliffordAlgebraDualNumber.equiv ((CliffordAlgebra.ι 0) r) = r • DualNumber.eps
-- CliffordAlgebraDualNumber.equiv_symm_eps
@[simp]
theorem equiv_symm_eps :
    CliffordAlgebraDualNumber.equiv.symm (eps : R[ε]) = ι (0 : QuadraticForm R R) 1 
Arguments: {R : Type u_1} [CommRing R]
Goal: CliffordAlgebraDualNumber.equiv.symm DualNumber.eps = (CliffordAlgebra.ι 0) 1
-- CliffordAlgebra.one_le_evenOdd_zero
theorem one_le_evenOdd_zero : 1 ≤ evenOdd Q 0 
Arguments: {R : Type u_1} {M : Type u_2} [CommRing R] [AddCommGroup M] [Module R M] (Q : QuadraticForm R M)
Goal: 1 ≤ CliffordAlgebra.evenOdd Q 0
-- CliffordAlgebra.range_ι_le_evenOdd_one
theorem range_ι_le_evenOdd_one : LinearMap.range (ι Q) ≤ evenOdd Q 1 
Arguments: {R : Type u_1} {M : Type u_2} [CommRing R] [AddCommGroup M] [Module R M] (Q : QuadraticForm R M)
Goal: LinearMap.range (CliffordAlgebra.ι Q) ≤ CliffordAlgebra.evenOdd Q 1
-- CliffordAlgebra.ι_mem_evenOdd_one
theorem ι_mem_evenOdd_one (m : M) : ι Q m ∈ evenOdd Q 1 
Arguments: {R : Type u_1} {M : Type u_2} [CommRing R] [AddCommGroup M] [Module R M] (Q : QuadraticForm R M) (m : M)
Goal: (CliffordAlgebra.ι Q) m ∈ CliffordAlgebra.evenOdd Q 1
-- CliffordAlgebra.ι_mul_ι_mem_evenOdd_zero
theorem ι_mul_ι_mem_evenOdd_zero (m₁ m₂ : M) : ι Q m₁ * ι Q m₂ ∈ evenOdd Q 0 
Arguments: {R : Type u_1} {M : Type u_2} [CommRing R] [AddCommGroup M] [Module R M] (Q : QuadraticForm R M) (m₁ m₂ : M)
Goal: (CliffordAlgebra.ι Q) m₁ * (CliffordAlgebra.ι Q) m₂ ∈ CliffordAlgebra.evenOdd Q 0
-- CliffordAlgebra.evenOdd_mul_le
theorem evenOdd_mul_le (i j : ZMod 2) : evenOdd Q i * evenOdd Q j ≤ evenOdd Q (i + j) 
Arguments: {R : Type u_1} {M : Type u_2} [CommRing R] [AddCommGroup M] [Module R M] (Q : QuadraticForm R M) (i j : ZMod 2)
Goal: CliffordAlgebra.evenOdd Q i * CliffordAlgebra.evenOdd Q j ≤ CliffordAlgebra.evenOdd Q (i + j)
-- CliffordAlgebra.GradedAlgebra.ι_apply
theorem GradedAlgebra.ι_apply (m : M) :
    GradedAlgebra.ι Q m = DirectSum.of (fun i => ↥(evenOdd Q i)) 1 ⟨ι Q m, ι_mem_evenOdd_one Q m⟩ 
Arguments: {R : Type u_1} {M : Type u_2} [CommRing R] [AddCommGroup M] [Module R M] (Q : QuadraticForm R M) (m : M)
Goal: (CliffordAlgebra.GradedAlgebra.ι Q) m =
  (DirectSum.of (fun i => ↥(CliffordAlgebra.evenOdd Q i)) 1) ⟨(CliffordAlgebra.ι Q) m, ⋯⟩
-- CliffordAlgebra.GradedAlgebra.ι_sq_scalar
nonrec theorem GradedAlgebra.ι_sq_scalar (m : M) :
    GradedAlgebra.ι Q m * GradedAlgebra.ι Q m = algebraMap R _ (Q m) 
Arguments: {R : Type u_1} {M : Type u_2} [CommRing R] [AddCommGroup M] [Module R M] (Q : QuadraticForm R M) (m : M)
Goal: (CliffordAlgebra.GradedAlgebra.ι Q) m * (CliffordAlgebra.GradedAlgebra.ι Q) m =
  (algebraMap R (DirectSum (ZMod 2) fun i => ↥(CliffordAlgebra.evenOdd Q i))) (Q m)
-- CliffordAlgebra.GradedAlgebra.lift_ι_eq
theorem GradedAlgebra.lift_ι_eq (i' : ZMod 2) (x' : evenOdd Q i') :
    -- Porting note: added a second `by apply`
    lift Q ⟨by apply GradedAlgebra.ι Q, by apply GradedAlgebra.ι_sq_scalar Q⟩ x' =
      DirectSum.of (fun i => evenOdd Q i) i' x' 
Arguments: {R : Type u_1} {M : Type u_2} [CommRing R] [AddCommGroup M] [Module R M] (Q : QuadraticForm R M) (i' : ZMod 2) (x' : ↥(CliffordAlgebra.evenOdd Q i'))
Goal: ((CliffordAlgebra.lift Q) ⟨CliffordAlgebra.GradedAlgebra.ι Q, ⋯⟩) ↑x' =
  (DirectSum.of (fun i => ↥(CliffordAlgebra.evenOdd Q i)) i') x'
-- CliffordAlgebra.iSup_ι_range_eq_top
theorem iSup_ι_range_eq_top : ⨆ i : ℕ, LinearMap.range (ι Q) ^ i = ⊤ 
Arguments: {R : Type u_1} {M : Type u_2} [CommRing R] [AddCommGroup M] [Module R M] (Q : QuadraticForm R M)
Goal: ⨆ i, LinearMap.range (CliffordAlgebra.ι Q) ^ i = ⊤
-- CliffordAlgebra.evenOdd_isCompl
theorem evenOdd_isCompl : IsCompl (evenOdd Q 0) (evenOdd Q 1) 
Arguments: {R : Type u_1} {M : Type u_2} [CommRing R] [AddCommGroup M] [Module R M] (Q : QuadraticForm R M)
Goal: IsCompl (CliffordAlgebra.evenOdd Q 0) (CliffordAlgebra.evenOdd Q 1)
-- CliffordAlgebra.evenOdd_induction
@[elab_as_elim]
theorem evenOdd_induction (n : ZMod 2) {motive : ∀ x, x ∈ evenOdd Q n → Prop}
    (range_ι_pow : ∀ (v) (h : v ∈ LinearMap.range (ι Q) ^ n.val),
        motive v (Submodule.mem_iSup_of_mem ⟨n.val, n.natCast_zmod_val⟩ h))
    (add : ∀ x y hx hy, motive x hx → motive y hy → motive (x + y) (Submodule.add_mem _ hx hy))
    (ι_mul_ι_mul :
      ∀ m₁ m₂ x hx,
        motive x hx →
          motive (ι Q m₁ * ι Q m₂ * x)
            (zero_add n ▸ SetLike.mul_mem_graded (ι_mul_ι_mem_evenOdd_zero Q m₁ m₂) hx))
    (x : CliffordAlgebra Q) (hx : x ∈ evenOdd Q n) : motive x hx 
Arguments: {R : Type u_1} {M : Type u_2} [CommRing R] [AddCommGroup M] [Module R M] (Q : QuadraticForm R M) (n : ZMod 2) {motive : (x : CliffordAlgebra Q) → x ∈ CliffordAlgebra.evenOdd Q n → Prop} (range_ι_pow : ∀ (v : CliffordAlgebra Q) (h : v ∈ LinearMap.range (CliffordAlgebra.ι Q) ^ n.val), motive v ⋯) (add :
  ∀ (x y : CliffordAlgebra Q) (hx : x ∈ CliffordAlgebra.evenOdd Q n) (hy : y ∈ CliffordAlgebra.evenOdd Q n),
    motive x hx → motive y hy → motive (x + y) ⋯) (ι_mul_ι_mul :
  ∀ (m₁ m₂ : M) (x : CliffordAlgebra Q) (hx : x ∈ CliffordAlgebra.evenOdd Q n),
    motive x hx → motive ((CliffordAlgebra.ι Q) m₁ * (CliffordAlgebra.ι Q) m₂ * x) ⋯) (x : CliffordAlgebra Q) (hx : x ∈ CliffordAlgebra.evenOdd Q n)
Goal: motive x hx
-- CliffordAlgebra.even_induction
@[elab_as_elim]
theorem even_induction {motive : ∀ x, x ∈ evenOdd Q 0 → Prop}
    (algebraMap : ∀ r : R, motive (algebraMap _ _ r) (SetLike.algebraMap_mem_graded _ _))
    (add : ∀ x y hx hy, motive x hx → motive y hy → motive (x + y) (Submodule.add_mem _ hx hy))
    (ι_mul_ι_mul :
      ∀ m₁ m₂ x hx,
        motive x hx →
          motive (ι Q m₁ * ι Q m₂ * x)
            (zero_add (0 : ZMod 2) ▸ SetLike.mul_mem_graded (ι_mul_ι_mem_evenOdd_zero Q m₁ m₂) hx))
    (x : CliffordAlgebra Q) (hx : x ∈ evenOdd Q 0) : motive x hx 
Arguments: {R : Type u_1} {M : Type u_2} [CommRing R] [AddCommGroup M] [Module R M] (Q : QuadraticForm R M) {motive : (x : CliffordAlgebra Q) → x ∈ CliffordAlgebra.evenOdd Q 0 → Prop} (algebraMap : ∀ (r : R), motive ((algebraMap R (CliffordAlgebra Q)) r) ⋯) (add :
  ∀ (x y : CliffordAlgebra Q) (hx : x ∈ CliffordAlgebra.evenOdd Q 0) (hy : y ∈ CliffordAlgebra.evenOdd Q 0),
    motive x hx → motive y hy → motive (x + y) ⋯) (ι_mul_ι_mul :
  ∀ (m₁ m₂ : M) (x : CliffordAlgebra Q) (hx : x ∈ CliffordAlgebra.evenOdd Q 0),
    motive x hx → motive ((CliffordAlgebra.ι Q) m₁ * (CliffordAlgebra.ι Q) m₂ * x) ⋯) (x : CliffordAlgebra Q) (hx : x ∈ CliffordAlgebra.evenOdd Q 0)
Goal: motive x hx
-- CliffordAlgebra.odd_induction
@[elab_as_elim]
theorem odd_induction {P : ∀ x, x ∈ evenOdd Q 1 → Prop}
    (ι : ∀ v, P (ι Q v) (ι_mem_evenOdd_one _ _))
    (add : ∀ x y hx hy, P x hx → P y hy → P (x + y) (Submodule.add_mem _ hx hy))
    (ι_mul_ι_mul :
      ∀ m₁ m₂ x hx,
        P x hx →
          P (CliffordAlgebra.ι Q m₁ * CliffordAlgebra.ι Q m₂ * x)
            (zero_add (1 : ZMod 2) ▸ SetLike.mul_mem_graded (ι_mul_ι_mem_evenOdd_zero Q m₁ m₂) hx))
    (x : CliffordAlgebra Q) (hx : x ∈ evenOdd Q 1) : P x hx 
Arguments: {R : Type u_1} {M : Type u_2} [CommRing R] [AddCommGroup M] [Module R M] (Q : QuadraticForm R M) {P : (x : CliffordAlgebra Q) → x ∈ CliffordAlgebra.evenOdd Q 1 → Prop} (ι : ∀ (v : M), P ((CliffordAlgebra.ι Q) v) ⋯) (add :
  ∀ (x y : CliffordAlgebra Q) (hx : x ∈ CliffordAlgebra.evenOdd Q 1) (hy : y ∈ CliffordAlgebra.evenOdd Q 1),
    P x hx → P y hy → P (x + y) ⋯) (ι_mul_ι_mul :
  ∀ (m₁ m₂ : M) (x : CliffordAlgebra Q) (hx : x ∈ CliffordAlgebra.evenOdd Q 1),
    P x hx → P ((CliffordAlgebra.ι Q) m₁ * (CliffordAlgebra.ι Q) m₂ * x) ⋯) (x : CliffordAlgebra Q) (hx : x ∈ CliffordAlgebra.evenOdd Q 1)
Goal: P x hx
-- QuadraticMap.IsometryEquiv.map_app'
-- Porting note(#5171): linter not ported yet @[nolint has_nonempty_instance]
structure IsometryEquiv (Q₁ : QuadraticMap R M₁ N) (Q₂ : QuadraticMap R M₂ N)
    extends M₁ ≃ₗ[R] M₂ where
  map_app' : ∀ m, Q₂ (toFun m) = Q₁ m
Arguments: {R : Type u_2} {M₁ : Type u_5} {M₂ : Type u_6} {N : Type u_9} [CommSemiring R] [AddCommMonoid M₁] [AddCommMonoid M₂] [AddCommMonoid N] [Module R M₁] [Module R M₂] [Module R N] {Q₁ : QuadraticMap R M₁ N} {Q₂ : QuadraticMap R M₂ N} (self : Q₁.IsometryEquiv Q₂) (m : M₁)
Goal: Q₂ ((↑self.toLinearEquiv).toFun m) = Q₁ m
-- QuadraticMap.IsometryEquiv.coe_toLinearEquiv
@[simp]
theorem coe_toLinearEquiv (f : Q₁.IsometryEquiv Q₂) : ⇑(f : M₁ ≃ₗ[R] M₂) = f 
Arguments: {R : Type u_2} {M₁ : Type u_5} {M₂ : Type u_6} {N : Type u_9} [CommSemiring R] [AddCommMonoid M₁] [AddCommMonoid M₂] [AddCommMonoid N] [Module R M₁] [Module R M₂] [Module R N] {Q₁ : QuadraticMap R M₁ N} {Q₂ : QuadraticMap R M₂ N} (f : Q₁.IsometryEquiv Q₂)
Goal: ⇑f.toLinearEquiv = ⇑f
-- QuadraticMap.IsometryEquiv.map_app
@[simp]
theorem map_app (f : Q₁.IsometryEquiv Q₂) (m : M₁) : Q₂ (f m) = Q₁ m 
Arguments: {R : Type u_2} {M₁ : Type u_5} {M₂ : Type u_6} {N : Type u_9} [CommSemiring R] [AddCommMonoid M₁] [AddCommMonoid M₂] [AddCommMonoid N] [Module R M₁] [Module R M₂] [Module R N] {Q₁ : QuadraticMap R M₁ N} {Q₂ : QuadraticMap R M₂ N} (f : Q₁.IsometryEquiv Q₂) (m : M₁)
Goal: Q₂ (f m) = Q₁ m
-- QuadraticMap.IsometryEquiv.toIsometry_apply
@[simps]
def toIsometry (g : Q₁.IsometryEquiv Q₂) : Q₁ →qᵢ Q₂ 
Arguments: {R : Type u_2} {M₁ : Type u_5} {M₂ : Type u_6} {N : Type u_9} [CommSemiring R] [AddCommMonoid M₁] [AddCommMonoid M₂] [AddCommMonoid N] [Module R M₁] [Module R M₂] [Module R N] {Q₁ : QuadraticMap R M₁ N} {Q₂ : QuadraticMap R M₂ N} (g : Q₁.IsometryEquiv Q₂) (x : M₁)
Goal: g.toIsometry x = g x
-- QuadraticMap.Equivalent.refl
@[refl]
theorem refl (Q : QuadraticMap R M N) : Q.Equivalent Q 
Arguments: {R : Type u_2} {M : Type u_4} {N : Type u_9} [CommSemiring R] [AddCommMonoid M] [AddCommMonoid N] [Module R M] [Module R N] (Q : QuadraticMap R M N)
Goal: Q.Equivalent Q
-- QuadraticMap.Equivalent.symm
@[symm]
theorem symm (h : Q₁.Equivalent Q₂) : Q₂.Equivalent Q₁ 
Arguments: {R : Type u_2} {M₁ : Type u_5} {M₂ : Type u_6} {N : Type u_9} [CommSemiring R] [AddCommMonoid M₁] [AddCommMonoid M₂] [AddCommMonoid N] [Module R M₁] [Module R M₂] [Module R N] {Q₁ : QuadraticMap R M₁ N} {Q₂ : QuadraticMap R M₂ N} (h : Q₁.Equivalent Q₂)
Goal: Q₂.Equivalent Q₁
-- QuadraticMap.Equivalent.trans
@[trans]
theorem trans (h : Q₁.Equivalent Q₂) (h' : Q₂.Equivalent Q₃) : Q₁.Equivalent Q₃ 
Arguments: {R : Type u_2} {M₁ : Type u_5} {M₂ : Type u_6} {M₃ : Type u_7} {N : Type u_9} [CommSemiring R] [AddCommMonoid M₁] [AddCommMonoid M₂] [AddCommMonoid M₃] [AddCommMonoid N] [Module R M₁] [Module R M₂] [Module R M₃] [Module R N] {Q₁ : QuadraticMap R M₁ N} {Q₂ : QuadraticMap R M₂ N} {Q₃ : QuadraticMap R M₃ N} (h : Q₁.Equivalent Q₂) (h' : Q₂.Equivalent Q₃)
Goal: Q₁.Equivalent Q₃
-- QuadraticForm.equivalent_weightedSumSquares
theorem equivalent_weightedSumSquares (Q : QuadraticForm K V) :
    ∃ w : Fin (FiniteDimensional.finrank K V) → K, Equivalent Q (weightedSumSquares K w) 
Arguments: {K : Type u_3} {V : Type u_8} [Field K] [Invertible 2] [AddCommGroup V] [Module K V] [FiniteDimensional K V] (Q : QuadraticForm K V)
Goal: ∃ w, QuadraticMap.Equivalent Q (QuadraticMap.weightedSumSquares K w)
-- QuadraticForm.equivalent_weightedSumSquares_units_of_nondegenerate'
theorem equivalent_weightedSumSquares_units_of_nondegenerate' (Q : QuadraticForm K V)
    (hQ : (associated (R := K) Q).SeparatingLeft) :
    ∃ w : Fin (FiniteDimensional.finrank K V) → Kˣ, Equivalent Q (weightedSumSquares K w) 
Arguments: {K : Type u_3} {V : Type u_8} [Field K] [Invertible 2] [AddCommGroup V] [Module K V] [FiniteDimensional K V] (Q : QuadraticForm K V) (hQ : LinearMap.SeparatingLeft (QuadraticMap.associated Q))
Goal: ∃ w, QuadraticMap.Equivalent Q (QuadraticMap.weightedSumSquares K w)
-- CliffordAlgebra.ι_sq_scalar
@[simp]
theorem ι_sq_scalar (m : M) : ι Q m * ι Q m = algebraMap R _ (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.ι Q) m * (CliffordAlgebra.ι Q) m = (algebraMap R (CliffordAlgebra Q)) (Q m)