Flips and flip metrics

Lax185574.Flips Β· concepts/Lax185574/Flips.lean Β· lax-185574

definition

Loading review…

Sign in with ORCID

Community review

Flags

Each flag is tied to a public ORCID identity and explains why this concept may be incorrect.

No flags have been submitted.

    Community review

    Flag this concept

    State precisely what appears incorrect. This explanation will be public under your ORCID name.

    No source line selected.

    Natural Language Statement

    Definition

    For a graph G and a partition 𝒫 of V ≔ V(G), a 𝒫-flip of G is a graph H with V(H) = V such that for every pair X, Y ∈ 𝒫 (possibly X = Y), either H[X, Y] = G[X, Y] or H[X, Y] = αΈ [X, Y]. If |𝒫| ≀ s, then H is an s-flip of G. The associated flip metric and its balls are

    dist_𝒫(u, v) ≔ max { dist^H(u, v) : H is a 𝒫-flip of G }, Ball^𝒫_r(v) ≔ { u : dist_𝒫(u, v) ≀ r } = β‹‚ { Ball^H_r(v) : H is a 𝒫-flip of G }.

    As a shorthand, for a graph G and a set S βŠ† V(G), a 𝒫S-flip of G is called an S-flip, and dist_S^G ≔ dist{𝒫_S} and Ball^S_r ≔ Ball^{𝒫_S}_r. Here 𝒫_S is the partition into atomic types over S, see Lax185574.AtomicTypesLax185574.AtomicTypes and Lax185574.PartitionsLax185574.Partitions.

    Concept map
    8 concepts
    100%
    DefinitionThis conceptRelated conceptA β†’ B: B builds on ADescendants are omitted for concepts with more than 10 descendants.

    In the paper

    • page 14 of this submission's paper

    Lean source view on GitHub

    1import Lax185574.Partitions
    2import Lax185574.GaifmanGraph
    3
    4/-!
    5---
    6title: Flips and flip metrics
    7type: definition
    8---
    9For a graph G and a partition 𝒫 of V ≔ V(G), a *𝒫-flip* of G is a graph
    10H with V(H) = V such that for every pair X, Y ∈ 𝒫 (possibly X = Y),
    11either H[X, Y] = G[X, Y] or H[X, Y] = αΈ [X, Y]. If |𝒫| ≀ s, then H is
    12an *s-flip* of G. The associated *flip metric* and its balls are
    13
    14dist_𝒫(u, v) ≔ max { dist^H(u, v) : H is a 𝒫-flip of G },
    15Ball^𝒫_r(v) ≔ { u : dist_𝒫(u, v) ≀ r } = β‹‚ { Ball^H_r(v) : H is a 𝒫-flip of G }.
    16
    17As a shorthand, for a graph G and a set S βŠ† V(G), a 𝒫_S-flip of G is
    18called an *S-flip*, and dist_S^G ≔ dist_{𝒫_S} and Ball^S_r ≔ Ball^{𝒫_S}_r.
    19Here 𝒫_S is the partition into atomic types over S, see
    20`Lax185574.AtomicTypes` and `Lax185574.Partitions`.
    21
    22# Formalization notes
    23
    24"H[X, Y] = G[X, Y] or H[X, Y] = αΈ [X, Y]" says that on all pairs of
    25distinct vertices x ∈ X, y ∈ Y, adjacency in H agrees with adjacency in
    26G, or on all of them it agrees with non-adjacency in G. For X = Y this
    27reads H[X] = G[X] or H[X] = αΈ [X], which is the intended meaning. The
    28parts X and Y are named by vertices a and b with X = 𝒫(a) and Y = 𝒫(b).
    29
    30The bound dist_𝒫(u, v) ≀ r is `FlipWithinDist`: in every 𝒫-flip, some
    31walk from u to v has length at most r. Distances are measured by walks,
    32as in `Lax185574.GaifmanGraph`, so the maximum of the paper is never
    33needed as a number, and an infinite distance in some flip is allowed.
    34The ball is the set of vertices u with dist_𝒫(v, u) ≀ r, which is the
    35intersection form of the paper. The ball Ball^S_r(v) is
    36`flipBall G (atomicTypes G S) r v` and gets no separate name. An s-flip
    37is a 𝒫-flip with `Nat.card (Quotient 𝒫) ≀ s`, which is spelled out where
    38it is used.
    39-/
    40
    41namespace Lax185574.Flips
    42
    43open Lax185574.Partitions Lax185574.GaifmanGraph
    44
    45universe z
    46
    47variable {V : Type z}
    48
    49/-- `H` is a `𝒫`-flip of `G`: for every pair of parts `𝒫(a)`, `𝒫(b)`,
    50adjacency in `H` between distinct vertices of these parts either agrees
    51with adjacency in `G` throughout, or with non-adjacency in `G`
    52throughout. -/
    53def IsFlip (G : SimpleGraph V) (P : Setoid V) (H : SimpleGraph V) : Prop :=
    54 βˆ€ a b : V,
    55 (βˆ€ x y : V, P x a β†’ P y b β†’ x β‰  y β†’ (H.Adj x y ↔ G.Adj x y)) ∨
    56 (βˆ€ x y : V, P x a β†’ P y b β†’ x β‰  y β†’ (H.Adj x y ↔ Β¬ G.Adj x y))
    57
    58/-- `dist_𝒫(u, v) ≀ r`: in every `𝒫`-flip of `G`, some walk from `u`
    59to `v` has length at most `r`. -/
    60def FlipWithinDist (G : SimpleGraph V) (P : Setoid V) (r : β„•) (u v : V) : Prop :=
    61 βˆ€ H : SimpleGraph V, IsFlip G P H β†’ WithinDist H r u v
    62
    63/-- `Ball^𝒫_r(v)`: the vertices within distance `r` of `v` in every
    64`𝒫`-flip of `G`. -/
    65def flipBall (G : SimpleGraph V) (P : Setoid V) (r : β„•) (v : V) : Set V :=
    66 {u | FlipWithinDist G P r v u}
    67
    68end Lax185574.Flips
    69
    Formalization notes

    "H[X, Y] = G[X, Y] or H[X, Y] = αΈ [X, Y]" says that on all pairs of distinct vertices x ∈ X, y ∈ Y, adjacency in H agrees with adjacency in G, or on all of them it agrees with non-adjacency in G. For X = Y this reads H[X] = G[X] or H[X] = αΈ [X], which is the intended meaning. The parts X and Y are named by vertices a and b with X = 𝒫(a) and Y = 𝒫(b).

    The bound dist_𝒫(u, v) ≀ r is FlipWithinDistFlipWithinDist: in every 𝒫-flip, some walk from u to v has length at most r. Distances are measured by walks, as in Lax185574.GaifmanGraphLax185574.GaifmanGraph, so the maximum of the paper is never needed as a number, and an infinite distance in some flip is allowed. The ball is the set of vertices u with dist_𝒫(v, u) ≀ r, which is the intersection form of the paper. The ball Ball^S_r(v) is flipBallG(atomicTypesGS)rvflipBall G (atomicTypes G S) r v and gets no separate name. An s-flip is a 𝒫-flip with Nat.card(Quotient𝒫)≀sNat.card (Quotient 𝒫) ≀ s, which is spelled out where it is used.

    Discussion

    Ask a question or add context. Endorsements and structured flags are kept in the review panel above.

    Loading discussion…