Documentation

LeanPool.Polytopes.Halfspace

Halfspaces in inner product spaces and their basic geometric operations.

A halfspace of E. For convenience it is described by a continuous linear functional of norm 1 together with a real number bound.

Instances For
    @[implicit_reducible]
    noncomputable instance NegUnitSphereDual {E : Type} [NormedAddCommGroup E] [InnerProductSpace E] :
    Equations

    The underlying set of points of a halfspace H_.

    Equations
    Instances For
      @[implicit_reducible]
      Equations
      theorem Halfspace.h {E : Type} [NormedAddCommGroup E] [InnerProductSpace E] [CompleteSpace E] (H_ : Halfspace E) :
      H_ = H_.f ⁻¹' {x : | x H_.α}

      The coercion of a halfspace to a set equals the sublevel preimage of its functional.

      theorem Halfspace_mem {E : Type} [NormedAddCommGroup E] [InnerProductSpace E] [CompleteSpace E] (H_ : Halfspace E) (x : E) :
      x H_ H_.f x H_.α
      noncomputable def halfspaceTranslation {E : Type} [NormedAddCommGroup E] [InnerProductSpace E] (x : E) (H_ : Halfspace E) :

      The halfspace H_ translated by the vector x.

      Equations
      Instances For
        theorem halfspaceTranslation.S {E : Type} [NormedAddCommGroup E] [InnerProductSpace E] [CompleteSpace E] (x : E) (H_ : Halfspace E) :
        (halfspaceTranslation x H_) = (fun (x_1 : E) => x_1 + x) '' H_
        theorem mem_halfspaceTranslation {E : Type} [NormedAddCommGroup E] [InnerProductSpace E] [CompleteSpace E] (x : E) (H_ : Halfspace E) (y : E) :
        y (halfspaceTranslation x H_) y - x H_
        theorem Hyperplane_convex {E : Type} [NormedAddCommGroup E] [InnerProductSpace E] (Hi_ : Halfspace E) :
        Convex {x : E | Hi_.f x = Hi_.α}
        theorem Hyperplane_affineClosed {E : Type} [NormedAddCommGroup E] [InnerProductSpace E] {n : } (Hi_ : Halfspace E) (s : Fin nE) :
        Set.range s {x : E | Hi_.f x = Hi_.α}∀ (a : Fin n), Finset.univ.sum a = 1(Finset.affineCombination Finset.univ s) a {x : E | Hi_.f x = Hi_.α}
        theorem Halfspace.val_raw {E : Type} [NormedAddCommGroup E] [InnerProductSpace E] (p : Subspace E) [CompleteSpace p] (H_' : Halfspace p) :
        ∃ (H_ : Halfspace E), ((∀ (x : p), H_.f x = H_'.f x) H_.f = H_'.f) H_.α = H_'.α
        noncomputable def Halfspace.val {E : Type} [NormedAddCommGroup E] [InnerProductSpace E] (p : Subspace E) [CompleteSpace p] (H_' : Halfspace p) :

        A halfspace of the subspace p extended to a halfspace of the whole space E.

        Equations
        Instances For
          theorem Halfspace.val_f {E : Type} [NormedAddCommGroup E] [InnerProductSpace E] (p : Subspace E) [CompleteSpace p] (H_' : Halfspace p) (x : p) :
          (val p H_').f x = H_'.f x
          theorem Halfspace.val_C {E : Type} [NormedAddCommGroup E] [InnerProductSpace E] (p : Subspace E) [CompleteSpace p] (H_' : Halfspace p) :
          (val p H_').α = H_'.α
          theorem Halfspace.val_eq {E : Type} [NormedAddCommGroup E] [InnerProductSpace E] [CompleteSpace E] (p : Subspace E) [CompleteSpace p] (H_' : Halfspace p) :
          (val p H_') p = Subtype.val '' H_'
          theorem Halfspace.val_eq' {E : Type} [NormedAddCommGroup E] [InnerProductSpace E] [CompleteSpace E] (p : Subspace E) [CompleteSpace p] (H_' : Halfspace p) :
          (fun (H_ : Halfspace p) => (val p H_) p) H_' = (fun (H_ : Set p) => Subtype.val '' H_) H_'