Documentation

Mathlib.Tactic.ComputeAsymptotics.Multiseries.Basic

Basic constructions for multiseries #

Main definitions #

Let [b₁, ..., bₙ] be our basis.

For each construction, we provide two definitions: one for Multiseries and one for MultiseriesExpansion. We then prove structural simp-lemmas describing their relationships with MultiseriesExpansion.seq and MultiseriesExpansion.toFun. Finally, we prove that all constructions are Sorted and Approximates their attached functions.

@[irreducible]
def Tactic.ComputeAsymptotics.MultiseriesExpansion.Multiseries.const (basis_hd : ) (basis_tl : Basis) (c : ) :
Multiseries basis_hd basis_tl

Multiseries-part of MultiseriesExpansion.const.

Equations
  • One or more equations did not get rendered due to their size.
Instances For
    @[irreducible]

    Multiseries representing a constant.

    Equations
    Instances For
      @[implicit_reducible]

      This instance is needed to create an instance for AddCommMonoid (MultiseriesExpansion basis), which is necessary for using the abel tactic in our proofs.

      Equations
      @[implicit_reducible]
      instance Tactic.ComputeAsymptotics.MultiseriesExpansion.instZeroMultiseries {basis_hd : } {basis_tl : Basis} :
      Zero (Multiseries basis_hd basis_tl)

      This instance is needed to create an instance for AddCommMonoid (MultiseriesExpansion basis), which is necessary for using the abel tactic in our proofs.

      Equations
      @[irreducible]
      noncomputable def Tactic.ComputeAsymptotics.MultiseriesExpansion.Multiseries.monomialRpow (basis_hd : ) (basis_tl : Basis) (n : ) (r : ) :
      Multiseries basis_hd basis_tl

      Multiseries-part of MultiseriesExpansion.monomialRpow.

      Equations
      • One or more equations did not get rendered due to their size.
      Instances For
        @[irreducible]

        Multiseries representing basis[n] ^ r.

        Equations
        Instances For
          theorem Tactic.ComputeAsymptotics.MultiseriesExpansion.zero_def {basis_hd : } {basis_tl : List ()} :
          0 = mk Multiseries.nil fun (x : ) => 0
          theorem Tactic.ComputeAsymptotics.MultiseriesExpansion.Multiseries.const_def {basis_hd : } {basis_tl : Basis} (c : ) :
          const basis_hd basis_tl c = cons 0 (MultiseriesExpansion.const basis_tl c) nil
          @[simp]
          theorem Tactic.ComputeAsymptotics.MultiseriesExpansion.const_toFun' {basis : Basis} {c : } :
          (const basis c).toFun = fun (x : ) => c
          @[simp]
          theorem Tactic.ComputeAsymptotics.MultiseriesExpansion.const_seq {basis_hd : } {basis_tl : List ()} {c : } :
          (const (basis_hd :: basis_tl) c).seq = Multiseries.const basis_hd basis_tl c
          theorem Tactic.ComputeAsymptotics.MultiseriesExpansion.Multiseries.const_sorted {basis_hd : } {basis_tl : Basis} {c : } :
          (const basis_hd basis_tl c).Sorted

          Constants are well-ordered.

          The constant multiseries approximates the constant function.

          one approximates the unit function.

          @[simp]
          theorem Tactic.ComputeAsymptotics.MultiseriesExpansion.monomialRpow_toFun {basis : Basis} {n : Fin (List.length basis)} {r : } :
          (monomialRpow basis (↑n) r).toFun = basis[n] ^ r
          @[simp]
          theorem Tactic.ComputeAsymptotics.MultiseriesExpansion.monomialRpow_seq {basis_hd : } {basis_tl : Basis} {n : } {r : } :
          (monomialRpow (basis_hd :: basis_tl) n r).seq = Multiseries.monomialRpow basis_hd basis_tl n r
          theorem Tactic.ComputeAsymptotics.MultiseriesExpansion.Multiseries.monomialRpow_sorted {basis_hd : } {basis_tl : Basis} {n : } {r : } :
          (monomialRpow basis_hd basis_tl n r).Sorted

          monomialRpow approximates the monomial function.

          @[simp]
          @[simp]
          theorem Tactic.ComputeAsymptotics.MultiseriesExpansion.monomial_seq {basis_hd : } {basis_tl : Basis} {n : } :
          (monomial (basis_hd :: basis_tl) n).seq = Multiseries.monomial basis_hd basis_tl n
          theorem Tactic.ComputeAsymptotics.MultiseriesExpansion.Multiseries.monomial_sorted {basis_hd : } {basis_tl : Basis} {n : } :
          (monomial basis_hd basis_tl n).Sorted

          monomial approximates the monomial function.