Binary path-counting gadget
ID: binary-path-counting-gadget
A binary path-counting gadget constructs a directed acyclic graph with exactly directed paths from entrance to exit , using vertices for a nonnegative integer .
For , read its binary expansion after the leading one. Begin with one edge . For each following bit , add fresh vertices and edges , , , . If , also add . Replace by . The path count changes from to . Finally add . For , the bits give counts . For , leave disconnected.
To replace a weighted edge inside a cycle cover of a directed graph, identify and give each fresh internal vertex a unit-weight self-loop. If the replacement is unused, all fresh vertices use their self-loops, in one way. If it is used, the selected internal edges form one -to- path, giving possibilities; all unused vertices use their self-loops. The internal graph is acyclic apart from these self-loops, so there are no other internal directed cycles. Thus the substitution preserves the weighted permanent of a matrix.
New to topics? Read the docs here!