Multiplicative bases

MultiplicativeBasisDeformations.Foundations.TreeBFS

Trees seen from a root #

Elementary facts about a finite tree with a proper two-colouring, used in the proof of Proposition 4.1, Step 2 (periodic-mesh-calculations.tex): seen from a root o, adjacent vertices have distances differing by one, and every other vertex has a unique neighbour closer to o (its parent).

theorem MultiplicativeBasisDeformations.TreeBFS.walk_length_parity {D : Type v} {G : SimpleGraph D} (par : D → ZMod 2) (hpar : ∀ {u w : D}, G.Adj u w → par w = par u + 1) {u w : D} (p : G.Walk u w) :
↑p.length = par w - par u
theorem MultiplicativeBasisDeformations.TreeBFS.dist_adj {D : Type v} {G : SimpleGraph D} (par : D → ZMod 2) (hpar : ∀ {u w : D}, G.Adj u w → par w = par u + 1) (hG : G.Connected) (o : D) {u w : D} (h : G.Adj u w) :
G.dist o w = G.dist o u + 1 ∨ G.dist o u = G.dist o w + 1

Adjacent vertices have distances to the root differing by exactly one.

theorem MultiplicativeBasisDeformations.TreeBFS.exists_parent {D : Type v} {G : SimpleGraph D} (hG : G.Connected) (o : D) {v : D} (hv : v ≠ o) :
∃ (u : D), G.Adj u v ∧ G.dist o u + 1 = G.dist o v

Every vertex other than the root has a neighbour closer to the root.

theorem MultiplicativeBasisDeformations.TreeBFS.parent_unique {D : Type v} {G : SimpleGraph D} (hG : G.Connected) (hA : G.IsAcyclic) (o : D) {v u u' : D} (h : G.Adj u v) (hu : G.dist o u + 1 = G.dist o v) (h' : G.Adj u' v) (hu' : G.dist o u' + 1 = G.dist o v) :
u = u'

In a tree, the parent is unique.