A Hamilton circuit presented as a cyclic list #
The forward direction of the Vertex Cover → Hamilton Circuit reduction builds
its circuit as an explicit sequence of vertices – selectors interleaved with the
chains of the cover vertices – so it is convenient to introduce a tour from a
list: a duplicate-free list containing every vertex, along which
consecutive elements are adjacent and whose last element is adjacent to its
first, is a tour (DescriptiveComplexity.tourOn_of_cycleList).
A cyclic list is a tour. A duplicate-free list containing every element,
along which consecutive elements are R-related and whose last element is
R-related to its first, presents a tour of R.
Dependency graph
The traversal of a single gadget (the snake) #
The gadget vertex of index i over the ordered edge (a, b) (owner a).
Equations
- DescriptiveComplexity.gv i hi h = DescriptiveComplexity.gPt i hi h
Instances For
Dependency graph
Gadget vertex 0 (a side's entrance).
Equations
Instances For
Dependency graph
Gadget vertex 1.
Equations
Instances For
Dependency graph
Gadget vertex 2.
Equations
Instances For
Dependency graph
Gadget vertex 3.
Equations
Instances For
Dependency graph
Gadget vertex 4.
Equations
Instances For
Dependency graph
Gadget vertex 5 (a side's exit).
Equations
Instances For
Dependency graph
The traversal of gadget {a, b} when b is also in the cover: only the
a-side is walked, a straight horizontal path 0-1-2-3-4-5.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Dependency graph
The traversal of gadget {a, b} when b is not in the cover: the
a-through path visiting all twelve vertices, dipping into the b-side.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Dependency graph
Dependency graph
Dependency graph
Dependency graph
Dependency graph
Distinctness of gadget vertices #
Which vertices a snake contains (for covering) #
The sorted neighbor list of a vertex #
The neighbors of a in the input, listed in increasing order.
Equations
- DescriptiveComplexity.nbrList a = {b : A | DescriptiveComplexity.HEdge a b}.sort fun (x1 x2 : A) => x1 ≤ x2
Instances For
Dependency graph
A cover vertex's chain #
The snake of gadget {a, b} in a chain of a: the a-side-only path if b
is in the cover C, the through-path otherwise (empty if a, b is not an edge,
which never happens on the neighbor list).
Equations
- DescriptiveComplexity.snakeOf C a b = if h : DescriptiveComplexity.HEdge a b then if C b then DescriptiveComplexity.snakeBoth h else DescriptiveComplexity.snakeThrough h else []
Instances For
Dependency graph
Dependency graph
Dependency graph
Dependency graph
Dependency graph
Dependency graph
The chain of the cover vertex a: its gadgets' snakes, concatenated in
neighbor order.
Equations
Instances For
Dependency graph
Minima and maxima of the neighbor list #
Selector edges #
Which vertices a chain contains (for covering) #
The endpoints of a chain #
Chains of distinct cover vertices are disjoint #
Dependency graph
Dependency graph
Dependency graph
The blocks of the cycle #
A block of the cycle: a selector, optionally followed by a cover vertex's
chain. The cp is that chain when the selector is paired with a cover vertex,
and [] for a leftover selector.
Equations
- DescriptiveComplexity.block hm cp = DescriptiveComplexity.selPt hm :: cp
Instances For
Dependency graph
Dependency graph
Dependency graph
Dependency graph
The marked and cover lists #
The marked vertices of the input: the selectors.