Mahler measure of complex polynomials #
In this file we define the Mahler measure of a polynomial over ℂ[X]
and prove some basic
properties.
Main definitions #
Polynomial.logMahlerMeasure p
: the logarithmic Mahler measure of a polynomialp
defined as(2 * π)⁻¹ * ∫ x ∈ (0, 2 * π), log ‖p (e ^ (i * x))‖
.Polynomial.mahlerMeasure p
: the (exponential) Mahler measure of a polynomialp
, which is equal toe ^ p.logMahlerMeasure
ifp
is nonzero, and0
otherwise.
Main results #
Polynomial.mahlerMeasure_mul
: the Mahler measure of the product of two polynomials is the product of their Mahler measures.
The logarithmic Mahler measure of a polynomial p
defined as
(2 * π)⁻¹ * ∫ x ∈ (0, 2 * π), log ‖p (e ^ (i * x))‖
Equations
- p.logMahlerMeasure = Real.circleAverage (fun (x : ℂ) => Real.log ‖Polynomial.eval x p‖) 0 1
Instances For
@[simp]
@[simp]
The Mahler measure of a polynomial p
defined as e ^ (logMahlerMeasure p)
if p
is nonzero
and 0
otherwise
Equations
- p.mahlerMeasure = if p ≠ 0 then Real.exp p.logMahlerMeasure else 0
Instances For
@[simp]
theorem
Polynomial.intervalIntegrable_mahlerMeasure
(p : Polynomial ℂ)
:
IntervalIntegrable (fun (x : ℝ) => Real.log ‖eval (circleMap 0 1 x) p‖) MeasureTheory.volume 0 (2 * Real.pi)
The Mahler measure of the product of two polynomials is the product of their Mahler measures