Computing the scatter type
Lax185574.ComputeScatterType · concepts/Lax185574/ComputeScatterType.lean · lax-185574
No public endorsements yet.
Loading review…
Sign in with ORCIDNatural Language Statement
Lemma
There is an algorithm which, given a nonempty partial graph G, numbers k ≥ 1 and q ∈ ℕ, its distance matrix D_G, and the family (tree_{k,q}(a) : a ∈ V(G)), computes stp^G_{k,q} in time
|G|² · poly_{k,q}(max_{a ∈ V(G)} ‖tree_{k,q}(a)‖).
Concept map
Evidence
Each proof establishes this claim relative to its assumptions.
In the paper
- page 45 of this submission's paper
Lean source view on GitHub
| 1 | import Lax185574.ScatterTypes |
| 2 | import Lax185574.DistanceMatrix |
| 3 | import Lax185574.Algorithms |
| 4 | |
| 5 | /-! |
| 6 | --- |
| 7 | title: Computing the scatter type |
| 8 | type: lemma |
| 9 | --- |
| 10 | There is an algorithm which, given a nonempty partial graph G, numbers |
| 11 | k ≥ 1 and q ∈ ℕ, its distance matrix D_G, and the family |
| 12 | (tree_{k,q}(a) : a ∈ V(G)), computes stp^G_{k,q} in time |
| 13 | |
| 14 | |G|² · poly_{k,q}(max_{a ∈ V(G)} ‖tree_{k,q}(a)‖). |
| 15 | |
| 16 | # Formalization notes |
| 17 | |
| 18 | The algorithm is an algorithm in the sense of `Lax185574.Algorithms`, |
| 19 | one for all k and q. Its input is the tuple of G, k, q, the distance |
| 20 | matrix and the family of type trees, with the encodings of |
| 21 | `Lax185574.Encodings`. The partial graph is on `Fin n`, so |G| = n, and |
| 22 | it is nonempty when 1 ≤ n. The output is the scatter type, a finite set |
| 23 | as in `Lax185574.ScatterTypes`. The largest size of a tree of the |
| 24 | family is `maxTreeSize G k q`, and the time is |
| 25 | `O(n² · (maxTreeSize G k q + 1)^a)`, where the degree `a` and the |
| 26 | constant `c` may depend on k and q. The second factor is increased by |
| 27 | one, so that it is positive. |
| 28 | -/ |
| 29 | |
| 30 | namespace Lax185574.ComputeScatterType |
| 31 | |
| 32 | open Lax185574.Encoding Lax185574.Algorithms |
| 33 | open Lax185574.PartialGraphs Lax185574.ScatterTypes Lax185574.TypeTrees |
| 34 | open Lax185574.DistanceMatrix |
| 35 | |
| 36 | /-- **Computing the scatter type.** One algorithm computes `stp^G_{k,q}` |
| 37 | from `G`, `k`, `q`, the distance matrix `D_G` and the type trees of all |
| 38 | vertices, in time quadratic in `n` and polynomial in the largest size of |
| 39 | a tree. -/ |
| 40 | axiom exists_program_stp : |
| 41 | ∃ A : Algorithm, ∀ k q : ℕ, ∃ c a : ℕ, |
| 42 | ∀ (n : ℕ) (G : PartialGraph (Fin n)), 1 ≤ k → 1 ≤ n → |
| 43 | A.Computes c (G, k, q, distMatrix G, family G k q) (stp G k q) |
| 44 | (n ^ 2 * (maxTreeSize G k q + 1) ^ a) |
| 45 | |
| 46 | end Lax185574.ComputeScatterType |
| 47 |
Formalization notes
The algorithm is an algorithm in the sense of , one for all k and q. Its input is the tuple of G, k, q, the distance matrix and the family of type trees, with the encodings of . The partial graph is on , so |G| = n, and it is nonempty when 1 ≤ n. The output is the scatter type, a finite set as in . The largest size of a tree of the family is , and the time is , where the degree and the constant may depend on k and q. The second factor is increased by one, so that it is positive.
Used by
none
From Mathlib
none
Discussion
Ask a question or add context. Endorsements and structured flags are kept in the review panel above.
0 comments