Documentation

CslibFrontier.Computability.PolyTime.CSP.CyclicDifference.FaceParity

Parity of the actual compiled black and white scopes #

Finite sums retain each indexed edge/dart occurrence. White scopes may be listed in increasing position order because parity is commutative; black scopes retain the original argument order.

Exact original ordered scope after replacing its ports by indexed edge positions.

theorem Cslib.Complexity.CSP.CyclicCompiler.blackScope_bounds {Rel : Type} {F : Logic.PL.CSP Rel ℕ} (i : Fin (List.length F)) :
(blackScope F (↑i) F[↑i].2).Nodup ∧ ∀ v ∈ blackScope F (↑i) F[↑i].2, v < F.occurrences.length

Names in a black scope are distinct actual edge positions.

Black face parity is exactly parity of its original cyclic scope.