Related papers: Dancing links
In combinatorial reconfiguration, the reconfiguration problems on a vertex subset (e.g., an independent set) are well investigated. In these problems, some tokens are placed on a subset of vertices of the graph, and there are three natural…
We study a family of sorting match puzzles on grids, which we call permutation match puzzles. In this puzzle, each row and column of a $n \times n$ grid is labeled with an ordering constraint -- ascending (A) or descending (D) -- and the…
We introduce the idea that the P vs NP problem can have a finer structure. Given the NP complete problem of interest, the configurations space of the problem can be divided in (at least) two regions. In one region, polynomial algorithms to…
This paper covers a variety of mathematical folk puzzles, including geometric (Tangrams, dissection puzzles), logic, algebraic, probability (Monty Hall Problem, Birthday Paradox), and combinatorial challenges (Eight Queens Puzzle, Tower of…
We fix $n$ and say a square in the two-dimensional grid indexed by $(x,y)$ has color $c$ if $x+y \equiv c \pmod{n}$. A {\it ribbon tile} of order $n$ is a connected polyomino containing exactly one square of each color. We show that the set…
A pair of complementary algorithms are presented. One of the pair is a fast method for connecting graphs with an edge. The other is a fast method for removing edges from a graph. Both algorithms employ the same tree based graph…
The 15 puzzle is a classic reconfiguration puzzle with fifteen uniquely labeled unit squares within a $4 \times 4$ board in which the goal is to slide the squares (without ever overlapping) into a target configuration. By generalizing the…
We provide a remarkably simple algorithm to compute all (at most four) common tangents of two disjoint simple polygons. Given each polygon as a read-only array of its corners in cyclic order, the algorithm runs in linear time and constant…
Fast exact algorithms are known for Hamiltonian paths in undirected and directed bipartite graphs through elegant though involved algorithms that are quite different from each other. We devise algorithms that are simple and similar to each…
It has been shown that a class of probabilistic domain models cannot be learned correctly by several existing algorithms which employ a single-link look ahead search. When a multi-link look ahead search is used, the computational complexity…
Finding an efficient optimal partial tiling algorithm is still an open problem. We have worked on a special case, the tiling of Manhattan polyominoes with dominoes, for which we give an algorithm linear in the number of columns. Some…
A large number of NP-hard graph problems can be solved in $f(w)n^{O(1)}$ time and space when the input graph is provided together with a tree decomposition of width $w$, in many cases with a modest exponential dependence $f(w)$ on $w$.…
We develop data structures for dynamic closest pair problems with arbitrary distance functions, that do not necessarily come from any geometric structure on the objects. Based on a technique previously used by the author for Euclidean…
In this paper, we consider the set of all domino tilings of a cubiculated region. The primary question we explore is: How can we move from one tiling to another? Tiling spaces can be viewed as spaces of subgraphs of a fixed graph with a…
In the $15$-puzzle game, $15$ labeled square tiles are reconfigured on a $4\times 4$ board through an escort, wherein each (time) step, a single tile neighboring it may slide into it, leaving the space previously occupied by the tile as the…
We describe an algorithm to find ribbon disks for alternating knots, and the results of a computer implementation of this algorithm. The algorithm is underlain by a slice link obstruction coming from Donaldson's diagonalisation theorem. It…
Consecutive matrix multiplications are commonly used in graph neural networks and sparse linear solvers. These operations frequently access the same matrices for both reading and writing. While reusing these matrices improves data locality,…
The expanded Aztec diamond is a generalized version of the Aztec diamond, with an arbitrary number of long columns and long rows in the middle. In this paper, we count the number of domino tilings of the expanded Aztec diamond. The exact…
Listing k-cliques plays a fundamental role in various data mining tasks, such as community detection and mining of cohesive substructures. Existing algorithms for the k-clique listing problem are built upon a general framework, which finds…
It is common to encounter situations where one must solve a sequence of similar computational problems. Running a standard algorithm with worst-case runtime guarantees on each instance will fail to take advantage of valuable structure…