ruc-ai4math/mathlib_handler_benchmark_410 huggingface dataset:
-- NumberField.canonicalEmbedding.nnnorm_eq
theorem nnnorm_eq [NumberField K] (x : K) :
    ‖canonicalEmbedding K x‖₊ = Finset.univ.sup (fun φ : K →+* ℂ => ‖φ x‖₊) 
Arguments: {K : Type u_1} [Field K] [NumberField K] (x : K)
Goal: ‖(NumberField.canonicalEmbedding K) x‖₊ = Finset.univ.sup fun φ => ‖φ x‖₊
-- NumberField.canonicalEmbedding.norm_le_iff
theorem norm_le_iff [NumberField K] (x : K) (r : ℝ) :
    ‖canonicalEmbedding K x‖ ≤ r ↔ ∀ φ : K →+* ℂ, ‖φ x‖ ≤ r 
Arguments: {K : Type u_1} [Field K] [NumberField K] (x : K) (r : ℝ)
Goal: ‖(NumberField.canonicalEmbedding K) x‖ ≤ r ↔ ∀ (φ : K →+* ℂ), ‖φ x‖ ≤ r
-- NumberField.canonicalEmbedding.integerLattice.inter_ball_finite
theorem integerLattice.inter_ball_finite [NumberField K] (r : ℝ) :
    ((integerLattice K : Set ((K →+* ℂ) → ℂ)) ∩ Metric.closedBall 0 r).Finite 
Arguments: (K : Type u_1) [Field K] [NumberField K] (r : ℝ)
Goal: (↑(NumberField.canonicalEmbedding.integerLattice K) ∩ Metric.closedBall 0 r).Finite
-- NumberField.canonicalEmbedding.latticeBasis_apply
@[simp]
theorem latticeBasis_apply [NumberField K] (i : Free.ChooseBasisIndex ℤ (𝓞 K)) :
    latticeBasis K i = (canonicalEmbedding K) (integralBasis K i) 
Arguments: (K : Type u_1) [Field K] [NumberField K] (i : Module.Free.ChooseBasisIndex ℤ (NumberField.RingOfIntegers K))
Goal: (NumberField.canonicalEmbedding.latticeBasis K) i = (NumberField.canonicalEmbedding K) ((NumberField.integralBasis K) i)
-- NumberField.canonicalEmbedding.mem_span_latticeBasis
theorem mem_span_latticeBasis [NumberField K] (x : (K →+* ℂ) → ℂ) :
    x ∈ Submodule.span ℤ (Set.range (latticeBasis K)) ↔
      x ∈ ((canonicalEmbedding K).comp (algebraMap (𝓞 K) K)).range 
Arguments: (K : Type u_1) [Field K] [NumberField K] (x : (K →+* ℂ) → ℂ)
Goal: x ∈ Submodule.span ℤ (Set.range ⇑(NumberField.canonicalEmbedding.latticeBasis K)) ↔
  x ∈ ((NumberField.canonicalEmbedding K).comp (algebraMap (NumberField.RingOfIntegers K) K)).range
-- NumberField.canonicalEmbedding.mem_rat_span_latticeBasis
theorem mem_rat_span_latticeBasis [NumberField K] (x : K) :
    canonicalEmbedding K x ∈ Submodule.span ℚ (Set.range (latticeBasis K)) 
Arguments: (K : Type u_1) [Field K] [NumberField K] (x : K)
Goal: (NumberField.canonicalEmbedding K) x ∈ Submodule.span ℚ (Set.range ⇑(NumberField.canonicalEmbedding.latticeBasis K))
-- NumberField.canonicalEmbedding.integralBasis_repr_apply
theorem integralBasis_repr_apply [NumberField K] (x : K) (i : Free.ChooseBasisIndex ℤ (𝓞 K)) :
    (latticeBasis K).repr (canonicalEmbedding K x) i = (integralBasis K).repr x i 
Arguments: (K : Type u_1) [Field K] [NumberField K] (x : K) (i : Module.Free.ChooseBasisIndex ℤ (NumberField.RingOfIntegers K))
Goal: ((NumberField.canonicalEmbedding.latticeBasis K).repr ((NumberField.canonicalEmbedding K) x)) i =
  ↑(((NumberField.integralBasis K).repr x) i)
-- NumberField.mixedEmbedding.finrank
protected theorem finrank [NumberField K] : finrank ℝ (E K) = finrank ℚ K 
Arguments: (K : Type u_1) [Field K] [NumberField K]
Goal: FiniteDimensional.finrank ℝ (({ w // w.IsReal } → ℝ) × ({ w // w.IsComplex } → ℂ)) = FiniteDimensional.finrank ℚ K
-- NumberField.mixedEmbedding_injective
theorem _root_.NumberField.mixedEmbedding_injective [NumberField K] :
    Function.Injective (NumberField.mixedEmbedding K) 
Arguments: (K : Type u_1) [Field K] [NumberField K]
Goal: Function.Injective ⇑(NumberField.mixedEmbedding K)
-- NumberField.mixedEmbedding.commMap_apply_of_isReal
theorem commMap_apply_of_isReal (x : (K →+* ℂ) → ℂ) {w : InfinitePlace K} (hw : IsReal w) :
    (commMap K x).1 ⟨w, hw⟩ = (x w.embedding).re 
Arguments: (K : Type u_1) [Field K] (x : (K →+* ℂ) → ℂ) {w : NumberField.InfinitePlace K} (hw : w.IsReal)
Goal: ((NumberField.mixedEmbedding.commMap K) x).1 ⟨w, hw⟩ = (x w.embedding).re
-- NumberField.mixedEmbedding.commMap_apply_of_isComplex
theorem commMap_apply_of_isComplex (x : (K →+* ℂ) → ℂ) {w : InfinitePlace K} (hw : IsComplex w) :
    (commMap K x).2 ⟨w, hw⟩ = x w.embedding 
Arguments: (K : Type u_1) [Field K] (x : (K →+* ℂ) → ℂ) {w : NumberField.InfinitePlace K} (hw : w.IsComplex)
Goal: ((NumberField.mixedEmbedding.commMap K) x).2 ⟨w, hw⟩ = x w.embedding
-- NumberField.mixedEmbedding.commMap_canonical_eq_mixed
@[simp]
theorem commMap_canonical_eq_mixed (x : K) :
    commMap K (canonicalEmbedding K x) = mixedEmbedding K x 
Arguments: (K : Type u_1) [Field K] (x : K)
Goal: (NumberField.mixedEmbedding.commMap K) ((NumberField.canonicalEmbedding K) x) = (NumberField.mixedEmbedding K) x
-- NumberField.mixedEmbedding.disjoint_span_commMap_ker
theorem disjoint_span_commMap_ker [NumberField K] :
    Disjoint (Submodule.span ℝ (Set.range (canonicalEmbedding.latticeBasis K)))
      (LinearMap.ker (commMap K)) 
Arguments: (K : Type u_1) [Field K] [NumberField K]
Goal: Disjoint (Submodule.span ℝ (Set.range ⇑(NumberField.canonicalEmbedding.latticeBasis K)))
  (LinearMap.ker (NumberField.mixedEmbedding.commMap K))
-- NumberField.mixedEmbedding.normAtPlace_nonneg
theorem normAtPlace_nonneg  (w : InfinitePlace K) (x : E K) :
    0 ≤ normAtPlace w x 
Arguments: {K : Type u_1} [Field K] (w : NumberField.InfinitePlace K) (x : ({ w // w.IsReal } → ℝ) × ({ w // w.IsComplex } → ℂ))
Goal: 0 ≤ (NumberField.mixedEmbedding.normAtPlace w) x
-- NumberField.mixedEmbedding.normAtPlace_neg
theorem normAtPlace_neg (w : InfinitePlace K) (x : E K)  :
    normAtPlace w (- x) = normAtPlace w x 
Arguments: {K : Type u_1} [Field K] (w : NumberField.InfinitePlace K) (x : ({ w // w.IsReal } → ℝ) × ({ w // w.IsComplex } → ℂ))
Goal: (NumberField.mixedEmbedding.normAtPlace w) (-x) = (NumberField.mixedEmbedding.normAtPlace w) x
-- NumberField.mixedEmbedding.normAtPlace_add_le
theorem normAtPlace_add_le (w : InfinitePlace K) (x y : E K) :
    normAtPlace w (x + y) ≤ normAtPlace w x + normAtPlace w y 
Arguments: {K : Type u_1} [Field K] (w : NumberField.InfinitePlace K) (x y : ({ w // w.IsReal } → ℝ) × ({ w // w.IsComplex } → ℂ))
Goal: (NumberField.mixedEmbedding.normAtPlace w) (x + y) ≤
  (NumberField.mixedEmbedding.normAtPlace w) x + (NumberField.mixedEmbedding.normAtPlace w) y
-- NumberField.mixedEmbedding.normAtPlace_smul
theorem normAtPlace_smul (w : InfinitePlace K) (x : E K) (c : ℝ) :
    normAtPlace w (c • x) = |c| * normAtPlace w x 
Arguments: {K : Type u_1} [Field K] (w : NumberField.InfinitePlace K) (x : ({ w // w.IsReal } → ℝ) × ({ w // w.IsComplex } → ℂ)) (c : ℝ)
Goal: (NumberField.mixedEmbedding.normAtPlace w) (c • x) = |c| * (NumberField.mixedEmbedding.normAtPlace w) x
-- NumberField.mixedEmbedding.normAtPlace_real
theorem normAtPlace_real (w : InfinitePlace K) (c : ℝ) :
    normAtPlace w ((fun _ ↦ c, fun _ ↦ c) : (E K)) = |c| 
Arguments: {K : Type u_1} [Field K] (w : NumberField.InfinitePlace K) (c : ℝ)
Goal: (NumberField.mixedEmbedding.normAtPlace w) (fun x => c, fun x => ↑c) = |c|
-- NumberField.mixedEmbedding.normAtPlace_apply_isReal
theorem normAtPlace_apply_isReal {w : InfinitePlace K} (hw : IsReal w) (x : E K) :
    normAtPlace w x = ‖x.1 ⟨w, hw⟩‖ 
Arguments: {K : Type u_1} [Field K] {w : NumberField.InfinitePlace K} (hw : w.IsReal) (x : ({ w // w.IsReal } → ℝ) × ({ w // w.IsComplex } → ℂ))
Goal: (NumberField.mixedEmbedding.normAtPlace w) x = ‖x.1 ⟨w, hw⟩‖
-- NumberField.mixedEmbedding.normAtPlace_apply_isComplex
theorem normAtPlace_apply_isComplex {w : InfinitePlace K} (hw : IsComplex w) (x : E K) :
    normAtPlace w x = ‖x.2 ⟨w, hw⟩‖ 
Arguments: {K : Type u_1} [Field K] {w : NumberField.InfinitePlace K} (hw : w.IsComplex) (x : ({ w // w.IsReal } → ℝ) × ({ w // w.IsComplex } → ℂ))
Goal: (NumberField.mixedEmbedding.normAtPlace w) x = ‖x.2 ⟨w, hw⟩‖
-- NumberField.mixedEmbedding.normAtPlace_apply
@[simp]
theorem normAtPlace_apply (w : InfinitePlace K) (x : K) :
    normAtPlace w (mixedEmbedding K x) = w x 
Arguments: {K : Type u_1} [Field K] (w : NumberField.InfinitePlace K) (x : K)
Goal: (NumberField.mixedEmbedding.normAtPlace w) ((NumberField.mixedEmbedding K) x) = w x
-- NumberField.mixedEmbedding.normAtPlace_eq_zero
theorem normAtPlace_eq_zero {x : E K} :
    (∀ w, normAtPlace w x = 0) ↔ x = 0 
Arguments: {K : Type u_1} [Field K] {x : ({ w // w.IsReal } → ℝ) × ({ w // w.IsComplex } → ℂ)}
Goal: (∀ (w : NumberField.InfinitePlace K), (NumberField.mixedEmbedding.normAtPlace w) x = 0) ↔ x = 0
-- NumberField.mixedEmbedding.nnnorm_eq_sup_normAtPlace
theorem nnnorm_eq_sup_normAtPlace (x : E K) :
    ‖x‖₊ = univ.sup fun w ↦ ⟨normAtPlace w x, normAtPlace_nonneg w x⟩ 
Arguments: {K : Type u_1} [Field K] [NumberField K] (x : ({ w // w.IsReal } → ℝ) × ({ w // w.IsComplex } → ℂ))
Goal: ‖x‖₊ = Finset.univ.sup fun w => ⟨(NumberField.mixedEmbedding.normAtPlace w) x, ⋯⟩
-- NumberField.mixedEmbedding.norm_eq_sup'_normAtPlace
theorem norm_eq_sup'_normAtPlace (x : E K) :
    ‖x‖ = univ.sup' univ_nonempty fun w ↦ normAtPlace w x 
Arguments: {K : Type u_1} [Field K] [NumberField K] (x : ({ w // w.IsReal } → ℝ) × ({ w // w.IsComplex } → ℂ))
Goal: ‖x‖ = Finset.univ.sup' ⋯ fun w => (NumberField.mixedEmbedding.normAtPlace w) x
-- NumberField.mixedEmbedding.norm_apply
protected theorem norm_apply (x : E K) :
    mixedEmbedding.norm x = ∏ w, (normAtPlace w x) ^ (mult w) 
Arguments: {K : Type u_1} [Field K] [NumberField K] (x : ({ w // w.IsReal } → ℝ) × ({ w // w.IsComplex } → ℂ))
Goal: NumberField.mixedEmbedding.norm x =
  ∏ w : NumberField.InfinitePlace K, (NumberField.mixedEmbedding.normAtPlace w) x ^ w.mult
-- NumberField.mixedEmbedding.norm_nonneg
protected theorem norm_nonneg (x : E K) :
    0 ≤ mixedEmbedding.norm x 
Arguments: {K : Type u_1} [Field K] [NumberField K] (x : ({ w // w.IsReal } → ℝ) × ({ w // w.IsComplex } → ℂ))
Goal: 0 ≤ NumberField.mixedEmbedding.norm x
-- NumberField.mixedEmbedding.norm_eq_zero_iff
protected theorem norm_eq_zero_iff {x : E K} :
    mixedEmbedding.norm x = 0 ↔ ∃ w, normAtPlace w x = 0 
Arguments: {K : Type u_1} [Field K] [NumberField K] {x : ({ w // w.IsReal } → ℝ) × ({ w // w.IsComplex } → ℂ)}
Goal: NumberField.mixedEmbedding.norm x = 0 ↔ ∃ w, (NumberField.mixedEmbedding.normAtPlace w) x = 0
-- NumberField.mixedEmbedding.norm_ne_zero_iff
protected theorem norm_ne_zero_iff {x : E K} :
    mixedEmbedding.norm x ≠ 0 ↔ ∀ w, normAtPlace w x ≠ 0 
Arguments: {K : Type u_1} [Field K] [NumberField K] {x : ({ w // w.IsReal } → ℝ) × ({ w // w.IsComplex } → ℂ)}
Goal: NumberField.mixedEmbedding.norm x ≠ 0 ↔
  ∀ (w : NumberField.InfinitePlace K), (NumberField.mixedEmbedding.normAtPlace w) x ≠ 0
-- NumberField.mixedEmbedding.norm_smul
theorem norm_smul (c : ℝ) (x : E K) :
    mixedEmbedding.norm (c • x) = |c| ^ finrank ℚ K * (mixedEmbedding.norm x) 
Arguments: {K : Type u_1} [Field K] [NumberField K] (c : ℝ) (x : ({ w // w.IsReal } → ℝ) × ({ w // w.IsComplex } → ℂ))
Goal: NumberField.mixedEmbedding.norm (c • x) = |c| ^ FiniteDimensional.finrank ℚ K * NumberField.mixedEmbedding.norm x
-- NumberField.mixedEmbedding.norm_real
theorem norm_real (c : ℝ) :
    mixedEmbedding.norm ((fun _ ↦ c, fun _ ↦ c) : (E K)) = |c| ^ finrank ℚ K 
Arguments: {K : Type u_1} [Field K] [NumberField K] (c : ℝ)
Goal: NumberField.mixedEmbedding.norm (fun x => c, fun x => ↑c) = |c| ^ FiniteDimensional.finrank ℚ K
-- NumberField.mixedEmbedding.norm_eq_norm
@[simp]
theorem norm_eq_norm (x : K) :
    mixedEmbedding.norm (mixedEmbedding K x) = |Algebra.norm ℚ x| 
Arguments: {K : Type u_1} [Field K] [NumberField K] (x : K)
Goal: NumberField.mixedEmbedding.norm ((NumberField.mixedEmbedding K) x) = ↑|(Algebra.norm ℚ) x|
-- NumberField.mixedEmbedding.norm_eq_zero_iff'
theorem norm_eq_zero_iff' {x : E K} (hx : x ∈ Set.range (mixedEmbedding K)) :
    mixedEmbedding.norm x = 0 ↔ x = 0 
Arguments: {K : Type u_1} [Field K] [NumberField K] {x : ({ w // w.IsReal } → ℝ) × ({ w // w.IsComplex } → ℂ)} (hx : x ∈ Set.range ⇑(NumberField.mixedEmbedding K))
Goal: NumberField.mixedEmbedding.norm x = 0 ↔ x = 0
-- NumberField.mixedEmbedding.stdBasis_apply_ofIsReal
@[simp]
theorem stdBasis_apply_ofIsReal (x : E K) (w : {w : InfinitePlace K // IsReal w}) :
    (stdBasis K).repr x (Sum.inl w) = x.1 w 
Arguments: {K : Type u_1} [Field K] [NumberField K] (x : ({ w // w.IsReal } → ℝ) × ({ w // w.IsComplex } → ℂ)) (w : { w // w.IsReal })
Goal: ((NumberField.mixedEmbedding.stdBasis K).repr x) (Sum.inl w) = x.1 w
-- NumberField.mixedEmbedding.stdBasis_apply_ofIsComplex_fst
@[simp]
theorem stdBasis_apply_ofIsComplex_fst (x : E K) (w : {w : InfinitePlace K // IsComplex w}) :
    (stdBasis K).repr x (Sum.inr ⟨w, 0⟩) = (x.2 w).re 
Arguments: {K : Type u_1} [Field K] [NumberField K] (x : ({ w // w.IsReal } → ℝ) × ({ w // w.IsComplex } → ℂ)) (w : { w // w.IsComplex })
Goal: ((NumberField.mixedEmbedding.stdBasis K).repr x) (Sum.inr (w, 0)) = (x.2 w).re
-- NumberField.mixedEmbedding.stdBasis_apply_ofIsComplex_snd
@[simp]
theorem stdBasis_apply_ofIsComplex_snd (x : E K) (w : {w : InfinitePlace K // IsComplex w}) :
    (stdBasis K).repr x (Sum.inr ⟨w, 1⟩) = (x.2 w).im 
Arguments: {K : Type u_1} [Field K] [NumberField K] (x : ({ w // w.IsReal } → ℝ) × ({ w // w.IsComplex } → ℂ)) (w : { w // w.IsComplex })
Goal: ((NumberField.mixedEmbedding.stdBasis K).repr x) (Sum.inr (w, 1)) = (x.2 w).im
-- NumberField.mixedEmbedding.fundamentalDomain_stdBasis
theorem fundamentalDomain_stdBasis :
    fundamentalDomain (stdBasis K) =
        (Set.univ.pi fun _ => Set.Ico 0 1) ×ˢ
        (Set.univ.pi fun _ => Complex.measurableEquivPi⁻¹' (Set.univ.pi fun _ => Set.Ico 0 1)) 
Arguments: (K : Type u_1) [Field K] [NumberField K]
Goal: Zspan.fundamentalDomain (NumberField.mixedEmbedding.stdBasis K) =
  (Set.univ.pi fun x => Set.Ico 0 1) ×ˢ
    Set.univ.pi fun x => ⇑Complex.measurableEquivPi ⁻¹' Set.univ.pi fun x => Set.Ico 0 1
-- NumberField.mixedEmbedding.volume_fundamentalDomain_stdBasis
theorem volume_fundamentalDomain_stdBasis :
    volume (fundamentalDomain (stdBasis K)) = 1 
Arguments: (K : Type u_1) [Field K] [NumberField K]
Goal: MeasureTheory.volume (Zspan.fundamentalDomain (NumberField.mixedEmbedding.stdBasis K)) = 1
-- NumberField.mixedEmbedding.indexEquiv_apply_ofIsReal
@[simp]
theorem indexEquiv_apply_ofIsReal (w : {w : InfinitePlace K // IsReal w}) :
    (indexEquiv K) (Sum.inl w) = w.val.embedding 
Arguments: {K : Type u_1} [Field K] [NumberField K] (w : { w // w.IsReal })
Goal: (NumberField.mixedEmbedding.indexEquiv K) (Sum.inl w) = (↑w).embedding
-- NumberField.mixedEmbedding.indexEquiv_apply_ofIsComplex_fst
@[simp]
theorem indexEquiv_apply_ofIsComplex_fst (w : {w : InfinitePlace K // IsComplex w}) :
    (indexEquiv K) (Sum.inr ⟨w, 0⟩) = w.val.embedding 
Arguments: {K : Type u_1} [Field K] [NumberField K] (w : { w // w.IsComplex })
Goal: (NumberField.mixedEmbedding.indexEquiv K) (Sum.inr (w, 0)) = (↑w).embedding
-- NumberField.mixedEmbedding.indexEquiv_apply_ofIsComplex_snd
@[simp]
theorem indexEquiv_apply_ofIsComplex_snd (w : {w : InfinitePlace K // IsComplex w}) :
    (indexEquiv K) (Sum.inr ⟨w, 1⟩) = ComplexEmbedding.conjugate w.val.embedding 
Arguments: {K : Type u_1} [Field K] [NumberField K] (w : { w // w.IsComplex })
Goal: (NumberField.mixedEmbedding.indexEquiv K) (Sum.inr (w, 1)) = NumberField.ComplexEmbedding.conjugate (↑w).embedding
-- NumberField.mixedEmbedding.det_matrixToStdBasis
theorem det_matrixToStdBasis :
    (matrixToStdBasis K).det = (2⁻¹ * I) ^ NrComplexPlaces K 
Arguments: (K : Type u_1) [Field K] [NumberField K]
Goal: (NumberField.mixedEmbedding.matrixToStdBasis K).det = (2⁻¹ * Complex.I) ^ NumberField.InfinitePlace.NrComplexPlaces K
-- NumberField.mixedEmbedding.stdBasis_repr_eq_matrixToStdBasis_mul
theorem stdBasis_repr_eq_matrixToStdBasis_mul (x : (K →+* ℂ) → ℂ)
    (hx : ∀ φ, conj (x φ) = x (ComplexEmbedding.conjugate φ)) (c : index K) :
    ((stdBasis K).repr (commMap K x) c : ℂ) =
      (matrixToStdBasis K *ᵥ (x ∘ (indexEquiv K))) c 
Arguments: (K : Type u_1) [Field K] [NumberField K] (x : (K →+* ℂ) → ℂ) (hx : ∀ (φ : K →+* ℂ), (starRingEnd ℂ) (x φ) = x (NumberField.ComplexEmbedding.conjugate φ)) (c : NumberField.mixedEmbedding.index K)
Goal: ↑(((NumberField.mixedEmbedding.stdBasis K).repr ((NumberField.mixedEmbedding.commMap K) x)) c) =
  (NumberField.mixedEmbedding.matrixToStdBasis K).mulVec (x ∘ ⇑(NumberField.mixedEmbedding.indexEquiv K)) c
-- NumberField.mixedEmbedding.latticeBasis_apply
@[simp]
theorem latticeBasis_apply (i : ChooseBasisIndex ℤ (𝓞 K)) :
    latticeBasis K i = (mixedEmbedding K) (integralBasis K i) 
Arguments: (K : Type u_1) [Field K] [NumberField K] (i : Module.Free.ChooseBasisIndex ℤ (NumberField.RingOfIntegers K))
Goal: (NumberField.mixedEmbedding.latticeBasis K) i = (NumberField.mixedEmbedding K) ((NumberField.integralBasis K) i)
-- NumberField.mixedEmbedding.mem_span_latticeBasis
theorem mem_span_latticeBasis (x : (E K)) :
    x ∈ Submodule.span ℤ (Set.range (latticeBasis K)) ↔
      x ∈ ((mixedEmbedding K).comp (algebraMap (𝓞 K) K)).range 
Arguments: (K : Type u_1) [Field K] [NumberField K] (x : ({ w // w.IsReal } → ℝ) × ({ w // w.IsComplex } → ℂ))
Goal: x ∈ Submodule.span ℤ (Set.range ⇑(NumberField.mixedEmbedding.latticeBasis K)) ↔
  x ∈ ((NumberField.mixedEmbedding K).comp (algebraMap (NumberField.RingOfIntegers K) K)).range
-- NumberField.mixedEmbedding.mem_rat_span_latticeBasis
theorem mem_rat_span_latticeBasis (x : K) :
    mixedEmbedding K x ∈ Submodule.span ℚ (Set.range (latticeBasis K)) 
Arguments: (K : Type u_1) [Field K] [NumberField K] (x : K)
Goal: (NumberField.mixedEmbedding K) x ∈ Submodule.span ℚ (Set.range ⇑(NumberField.mixedEmbedding.latticeBasis K))
-- NumberField.mixedEmbedding.latticeBasis_repr_apply
theorem latticeBasis_repr_apply (x : K) (i : ChooseBasisIndex ℤ (𝓞 K)) :
    (latticeBasis K).repr (mixedEmbedding K x) i = (integralBasis K).repr x i 
Arguments: (K : Type u_1) [Field K] [NumberField K] (x : K) (i : Module.Free.ChooseBasisIndex ℤ (NumberField.RingOfIntegers K))
Goal: ((NumberField.mixedEmbedding.latticeBasis K).repr ((NumberField.mixedEmbedding K) x)) i =
  ↑(((NumberField.integralBasis K).repr x) i)
-- NumberField.mixedEmbedding.det_basisOfFractionalIdeal_eq_norm
theorem det_basisOfFractionalIdeal_eq_norm
    (e : (ChooseBasisIndex ℤ (𝓞 K)) ≃ (ChooseBasisIndex ℤ I)) :
    |Basis.det (latticeBasis K) ((mixedEmbedding K ∘ (basisOfFractionalIdeal K I) ∘ e))| =
      FractionalIdeal.absNorm I.1 
Arguments: (K : Type u_1) [Field K] [NumberField K] (I : (FractionalIdeal (nonZeroDivisors (NumberField.RingOfIntegers K)) K)ˣ) (e : Module.Free.ChooseBasisIndex ℤ (NumberField.RingOfIntegers K) ≃ Module.Free.ChooseBasisIndex ℤ ↥↑↑I)
Goal: |(NumberField.mixedEmbedding.latticeBasis K).det
      (⇑(NumberField.mixedEmbedding K) ∘ ⇑(NumberField.basisOfFractionalIdeal K I) ∘ ⇑e)| =
  ↑(FractionalIdeal.absNorm ↑I)
-- NumberField.mixedEmbedding.fractionalIdealLatticeBasis_apply
@[simp]
theorem fractionalIdealLatticeBasis_apply (i : ChooseBasisIndex ℤ I) :
    fractionalIdealLatticeBasis K I i = (mixedEmbedding K) (basisOfFractionalIdeal K I i) 
Arguments: (K : Type u_1) [Field K] [NumberField K] (I : (FractionalIdeal (nonZeroDivisors (NumberField.RingOfIntegers K)) K)ˣ) (i : Module.Free.ChooseBasisIndex ℤ ↥↑↑I)
Goal: (NumberField.mixedEmbedding.fractionalIdealLatticeBasis K I) i =
  (NumberField.mixedEmbedding K) ((NumberField.basisOfFractionalIdeal K I) i)
-- NumberField.mixedEmbedding.mem_span_fractionalIdealLatticeBasis
theorem mem_span_fractionalIdealLatticeBasis (x : (E K)) :
    x ∈ Submodule.span ℤ (Set.range (fractionalIdealLatticeBasis K I)) ↔
      x ∈ mixedEmbedding K '' I 
Arguments: (K : Type u_1) [Field K] [NumberField K] (I : (FractionalIdeal (nonZeroDivisors (NumberField.RingOfIntegers K)) K)ˣ) (x : ({ w // w.IsReal } → ℝ) × ({ w // w.IsComplex } → ℂ))
Goal: x ∈ Submodule.span ℤ (Set.range ⇑(NumberField.mixedEmbedding.fractionalIdealLatticeBasis K I)) ↔
  x ∈ ⇑(NumberField.mixedEmbedding K) '' ↑↑I
-- GaussianInt.toComplex_def
theorem toComplex_def (x : ℤ[i]) : (x : ℂ) = x.re + x.im * I 
Arguments: (x : ℤ[i])
Goal: GaussianInt.toComplex x = ↑x.re + ↑x.im * Complex.I
-- GaussianInt.toComplex_def'
theorem toComplex_def' (x y : ℤ) : ((⟨x, y⟩ : ℤ[i]) : ℂ) = x + y * I 
Arguments: (x y : ℤ)
Goal: GaussianInt.toComplex { re := x, im := y } = ↑x + ↑y * Complex.I
-- GaussianInt.toComplex_def₂
theorem toComplex_def₂ (x : ℤ[i]) : (x : ℂ) = ⟨x.re, x.im⟩ 
Arguments: (x : ℤ[i])
Goal: GaussianInt.toComplex x = { re := ↑x.re, im := ↑x.im }
-- GaussianInt.to_real_re
@[simp]
theorem to_real_re (x : ℤ[i]) : ((x.re : ℤ) : ℝ) = (x : ℂ).re 
Arguments: (x : ℤ[i])
Goal: ↑x.re = (GaussianInt.toComplex x).re
-- GaussianInt.to_real_im
@[simp]
theorem to_real_im (x : ℤ[i]) : ((x.im : ℤ) : ℝ) = (x : ℂ).im 
Arguments: (x : ℤ[i])
Goal: ↑x.im = (GaussianInt.toComplex x).im
-- GaussianInt.toComplex_re
@[simp]
theorem toComplex_re (x y : ℤ) : ((⟨x, y⟩ : ℤ[i]) : ℂ).re = x 
Arguments: (x y : ℤ)
Goal: (GaussianInt.toComplex { re := x, im := y }).re = ↑x
-- GaussianInt.toComplex_im
@[simp]
theorem toComplex_im (x y : ℤ) : ((⟨x, y⟩ : ℤ[i]) : ℂ).im = y 
Arguments: (x y : ℤ)
Goal: (GaussianInt.toComplex { re := x, im := y }).im = ↑y
-- GaussianInt.toComplex_add
theorem toComplex_add (x y : ℤ[i]) : ((x + y : ℤ[i]) : ℂ) = x + y 
Arguments: (x y : ℤ[i])
Goal: GaussianInt.toComplex (x + y) = GaussianInt.toComplex x + GaussianInt.toComplex y
-- GaussianInt.toComplex_mul
theorem toComplex_mul (x y : ℤ[i]) : ((x * y : ℤ[i]) : ℂ) = x * y 
Arguments: (x y : ℤ[i])
Goal: GaussianInt.toComplex (x * y) = GaussianInt.toComplex x * GaussianInt.toComplex y
-- GaussianInt.toComplex_one
theorem toComplex_one : ((1 : ℤ[i]) : ℂ) = 1 
Goal: GaussianInt.toComplex 1 = 1
-- GaussianInt.toComplex_zero
theorem toComplex_zero : ((0 : ℤ[i]) : ℂ) = 0 
Goal: GaussianInt.toComplex 0 = 0
-- GaussianInt.toComplex_neg
theorem toComplex_neg (x : ℤ[i]) : ((-x : ℤ[i]) : ℂ) = -x 
Arguments: (x : ℤ[i])
Goal: GaussianInt.toComplex (-x) = -GaussianInt.toComplex x
-- GaussianInt.toComplex_sub
theorem toComplex_sub (x y : ℤ[i]) : ((x - y : ℤ[i]) : ℂ) = x - y 
Arguments: (x y : ℤ[i])
Goal: GaussianInt.toComplex (x - y) = GaussianInt.toComplex x - GaussianInt.toComplex y
-- GaussianInt.toComplex_star
@[simp]
theorem toComplex_star (x : ℤ[i]) : ((star x : ℤ[i]) : ℂ) = conj (x : ℂ) 
Arguments: (x : ℤ[i])
Goal: GaussianInt.toComplex (star x) = (starRingEnd ℂ) (GaussianInt.toComplex x)
-- GaussianInt.toComplex_inj
@[simp]
theorem toComplex_inj {x y : ℤ[i]} : (x : ℂ) = y ↔ x = y 
Arguments: {x y : ℤ[i]}
Goal: GaussianInt.toComplex x = GaussianInt.toComplex y ↔ x = y
-- GaussianInt.toComplex_injective
lemma toComplex_injective : Function.Injective GaussianInt.toComplex 
Goal: Function.Injective ⇑GaussianInt.toComplex
-- GaussianInt.toComplex_eq_zero
@[simp]
theorem toComplex_eq_zero {x : ℤ[i]} : (x : ℂ) = 0 ↔ x = 0 
Arguments: {x : ℤ[i]}
Goal: GaussianInt.toComplex x = 0 ↔ x = 0
-- GaussianInt.intCast_real_norm
@[simp]
theorem intCast_real_norm (x : ℤ[i]) : (x.norm : ℝ) = Complex.normSq (x : ℂ) 
Arguments: (x : ℤ[i])
Goal: ↑(Zsqrtd.norm x) = Complex.normSq (GaussianInt.toComplex x)
-- GaussianInt.intCast_complex_norm
@[simp]
theorem intCast_complex_norm (x : ℤ[i]) : (x.norm : ℂ) = Complex.normSq (x : ℂ) 
Arguments: (x : ℤ[i])
Goal: ↑(Zsqrtd.norm x) = ↑(Complex.normSq (GaussianInt.toComplex x))
-- GaussianInt.norm_nonneg
theorem norm_nonneg (x : ℤ[i]) : 0 ≤ norm x 
Arguments: (x : ℤ[i])
Goal: 0 ≤ Zsqrtd.norm x
-- GaussianInt.norm_eq_zero
@[simp]
theorem norm_eq_zero {x : ℤ[i]} : norm x = 0 ↔ x = 0 
Arguments: {x : ℤ[i]}
Goal: Zsqrtd.norm x = 0 ↔ x = 0
-- GaussianInt.norm_pos
theorem norm_pos {x : ℤ[i]} : 0 < norm x ↔ x ≠ 0 
Arguments: {x : ℤ[i]}
Goal: 0 < Zsqrtd.norm x ↔ x ≠ 0
-- GaussianInt.abs_natCast_norm
theorem abs_natCast_norm (x : ℤ[i]) : (x.norm.natAbs : ℤ) = x.norm 
Arguments: (x : ℤ[i])
Goal: ↑(Zsqrtd.norm x).natAbs = Zsqrtd.norm x
-- GaussianInt.natCast_natAbs_norm
@[simp]
theorem natCast_natAbs_norm {α : Type*} [Ring α] (x : ℤ[i]) : (x.norm.natAbs : α) = x.norm 
Arguments: {α : Type u_1} [Ring α] (x : ℤ[i])
Goal: ↑(Zsqrtd.norm x).natAbs = ↑(Zsqrtd.norm x)
-- GaussianInt.natAbs_norm_eq
theorem natAbs_norm_eq (x : ℤ[i]) :
    x.norm.natAbs = x.re.natAbs * x.re.natAbs + x.im.natAbs * x.im.natAbs 
Arguments: (x : ℤ[i])
Goal: (Zsqrtd.norm x).natAbs = x.re.natAbs * x.re.natAbs + x.im.natAbs * x.im.natAbs
-- GaussianInt.div_def
theorem div_def (x y : ℤ[i]) :
    x / y = ⟨round ((x * star y).re / norm y : ℚ), round ((x * star y).im / norm y : ℚ)⟩ 
Arguments: (x y : ℤ[i])
Goal: x / y = { re := round (↑(x * star y).re / ↑(Zsqrtd.norm y)), im := round (↑(x * star y).im / ↑(Zsqrtd.norm y)) }