Documentation

LeanPool.FriezePatterns.Chapter3

LeanPool.FriezePatterns.Chapter3 #

Imported Lean Pool material for LeanPool.FriezePatterns.Chapter3.

class arith_fp (f : ℕ × ℕ → ℚ) (n : ℕ) :

An arithmetic frieze pattern of height n: a rational-valued frieze pattern with all denominators equal to one and positive interior entries.

Instances
    def fluteF (f : ℕ × ℕ → ℚ) (n m i : ℕ) :

    The flute underlying sequence extracted from an arithmetic frieze pattern.

    Equations
    Instances For
      def friezeToFlute (f : ℕ × ℕ → ℚ) (n m : ℕ) (hn : 2 ≤ n) [arith_fp f n] :

      The flute associated to an arithmetic frieze pattern of height n ≥ 2.

      Equations
      Instances For
        @[irreducible]
        def friezeF {n : ℕ} (g : flute n) :

        The arithmetic frieze pattern associated to a flute, defined recursively over the second coordinate m (and as a tie-breaker the first coordinate i).

        Equations
        Instances For
          theorem fluteToFrieze {n : ℕ} (g : flute n) (hn : n ≠ 0) :

          The frieze pattern built from a flute is in fact an arithmetic frieze pattern.

          def arithFriezePatSet (n : ℕ) :
          Set (ℕ × ℕ → ℚ)

          The set of arithmetic frieze patterns of height n.

          Equations
          Instances For
            theorem main1 (n : ℕ) (h : n ≠ 0) (f : ℕ × ℕ → ℚ) :
            arith_fp f n → ∀ (a : ℕ × ℕ), f a ≤ ↑(Nat.fib n)
            theorem main2 (n : ℕ) (hn : n ≠ 0) :
            ∃ (f : ℕ × ℕ → ℚ) (_ : arith_fp f n) (a : ℕ × ℕ), f a = ↑(Nat.fib n)
            theorem main3 (n : ℕ) (hn : n ≠ 0) :
            ∃ (g : ℕ × ℕ → ℚ) (_ : arith_fp g n) (b : ℕ × ℕ), (∀ (f : ℕ × ℕ → ℚ), arith_fp f n → ∀ (a : ℕ × ℕ), f a ≥ g b → f a = g b) ∧ g b = ↑(Nat.fib n)