Documentation

Mathlib.NumberTheory.Height.Basic

Basic theory of heights #

This is an attempt at formalizing some basic properties of height functions.

We aim at a level of generality that allows to apply the theory to algebraic number fields and to function fields (and possibly beyond).

The general set-up for heights is the following. Let K be a field.

We realize this implementation via the class Height.AdmissibleAbsValues K.

Main definitions #

We define multiplicative heights and logarithmic heights (which are just defined to be the (real) logarithm of the corresponding multiplicative height). This leads to some duplication (in the definitions and statements; the proofs are reduced to those for the multiplicative height), which is justified, as both versions are frequently used.

We define the following variants.

Tags #

Height, absolute value

Families of admissible absolute values #

We define the class AdmissibleAbsValues K for a field K, which captures the notion of a family of absolute values on K satisfying a product formula.

class Height.AdmissibleAbsValues (K : Type u_1) [Field K] :
Type u_1

A type class capturing an admissible family of absolute values.

Instances

    The totalWeight of a field with AdmissibleAbsValues is the sum of the multiplicities of the archimedean places.

    Equations
    Instances For

      Heights of field elements #

      We use the subscipt to denote multiplicative and logarithmic heights of field elements (this is because we are in the one-dimensional case of (affine) heights).

      def Height.mulHeight₁ {K : Type u_1} [Field K] [AdmissibleAbsValues K] (x : K) :

      The multiplicative height of an element of K.

      Equations
      Instances For

        The mutliplicative height of a field element is always at least 1.

        def Height.logHeight₁ {K : Type u_1} [Field K] [AdmissibleAbsValues K] (x : K) :

        The logarithmic height of an element of K.

        Equations
        Instances For