LightsOut.js
The Math
This is a game of logic and adjacency matrices. In some applications graphs are never explicitly constructed but remain implicit in the way the problem was solved. The game of Lights Out is one example of a game that implicitly describes an undirected graph. The player interacts with the game by touching a light, which toggles its state and the state of all its cardinally adjacent neighbors (up, down, left, right). An undirected graph is one in which there are no directions from one vertex to another, only edges.
The Submission
Lights Out is an electronic game consisting of a grid of lights, usually 5 by 5, but ours is 9 by 9 to fit the Math Square. The lights are initially pressed in some pattern of on and off, and the objective of the game is to turn all the lights off.
Additional Notes
There are, by design, a few boards that cannot be solved