Quops (short for “quantum operations”) is a board game where the board and cards are based on the rules of quantum mechanics. The goal is simple: If you are player 0, get the values of all the tiles as close to 0 as possible. If you are player 1, get them as close to 1 as possible.
Each player has a hand of 5 cards, some of which affect a single tile and some of which affect two tiles. One-tile cards cannot be played on tiles entirely owned by your opponent, and two-tile cards must have one tile that is not completely owned by the opponent. On each turn, a player may use up to 3 cards, then draw back up to 5 at the end of their turn.
Tiles are hexagonal (six neighbors), and two-tile cards can only be played on neighboring tiles.
Mathematically, a board of n tiles is described by the superposition of bit vectors \([b_0, b_1, ... b_k]\) where \(k=2^n\). Player 0’s goal is to make the most probable state become \(\ket{00...0}\) while Player 1’s goal is to make it become \(\ket{11...1}\). This entire game could be described using quantum mechanics and matrices (and it is, in the code) - the only thing that the hexagonal board design decides is what possible unitary manipulations are allowed on the bits. In the backend, gameplay creates a quantum computer circuit step by step. In theory, this game could be physically implemented on a quantum computer, with each tile being a qubit.
Tile numbering:
13 15 18
11 4 6 17
9 2 0 5 16
8 1 3 14
7 10 12
Gameplay:
GAME START
Board:
0.0 0.0 0.0
0.0 0.0 0.0 0.0
0.0 0.0 0.5 1.0 1.0
1.0 1.0 1.0 1.0
1.0 1.0 1.0
_______________________________________________
Player 0's turn.
Hand:
0. CNOT
1. X
2. CH
3. SWAP
4. H
Choose a card to play: 0
Target A: 6
Target B: 5
0.0 0.0 0.0
0.0 0.0 0.0 0.0
0.0 0.0 0.5 0.0 1.0 <-- tile 5 was flipped
1.0 1.0 1.0 1.0 because tile 6 is 1
1.0 1.0 1.0
_______________________________________________
...
...(Player 0 makes 2 more moves)
...
_______________________________________________
Player 1's turn.
Hand:
0. CH
1. SWAP
2. CH
3. CNOT
4. CNOT
Choose a card to play: 0
Target A: 8
Target B: 9
0.0 0.0 0.0
0.0 0.0 0.0 0.0
H gate --> 0.5 0.0 0.5 0.0 1.0
applied to 1.0 1.0 1.0 1.0
1.0 1.0 1.0
_______________________________________________
...
...Player 1 makes 2 more moves
...
_______________________________________________
Player 0's turn...
What about more than 2 players (more than 2 possible states per tile)? In quantum computing, “qubits” with more than 2 states are known as qudits. \(n\) qudits that each have \(d\) states can represent \(d^n\) total possible “board-states” (ex: 2 qudits with 3 states each can represent the following 8 states: \(\ket{01}, \ket{02}, \ket{10}, \ket{11}, \ket{12}, \ket{20}, \ket{21}, \ket{22}\)). This game could be implemented using qutrits to allow for 3 players to play together, with each player aiming to get all qutrits into a different expected state.