TetraVex

TetraVex is a puzzle computer game, available for Windows and Linux systems.

Contents

Gameplay

TetraVex is an edge-matching puzzle. The player is presented with a grid (by default, 3x3) and nine square tiles, each with a number on each edge. The objective of the game is to place the tiles in the grid in the proper position as fast as possible. Two tiles can only be placed next to each other if the numbers on adjacent faces match.

Availability

TetraVex was originally available for Windows in Windows Entertainment Pack 3. It was later re-released as part of the Best of Windows Entertainment Pack. It is also available as an open source game on the GNOME desktop.

Origins

The original version of TetraVex (for the Windows Entertainment Pack 3) was written (and named) by Scott Ferguson who was also the Development Lead and an architect of the first version of Visual Basic.[1] TetraVex was inspired by "the problem of tiling the plane" as described by Donald Knuth on page 382 of Volume 1: Fundamental Algorithms, the first book in his The Art of Computer Programming series.

In the TetraVex version for Windows, the Microsoft Blibbet logo is displayed if the player solves a 6 by 6 puzzle.

The tiles are also known as McMahon Squares, named for Percy McMahon who explored their possibilities in the 1920s.[2]

Counting the possible number of TetraVex

Since the game is simple in its definition, it is easy to count how many possible TetraVex are for each grid of size n\times n. For instance, if n=1, there are 10^4 possible squares with a number from zero to nine on each edge. Therefore for n=1 there are 10^4 possible TetraVex puzzles.

Proposition: There are 10^{2n(n%2B1)} possible TetraVex in a grid of size n\times n.

Proof sketch: For n=1 this is true. We can proceed with mathematical induction.

Take a grid of (n%2B1)\times (n%2B1). The first n rows and the first n columns form a grid of n\times n and by the hypothesis of induction, there are 10^{2n(n%2B1)} possible TetraVex on that subgrid. Now, for each possible TetraVex on the subgrid, we can choose 10^3 squares to be placed in the position (1,n%2B1) of the grid (first row, last column), because only one side is determined. Once this square is chosen, there are 10^2 squares available to be placed in the position (2,n%2B1), and fixing that square we have 10^2 possibilities for the square on position (3,n%2B1). We can go on until the square on position (n,n%2B1) is fixed.

The same is true for the last row: there are 10^3 possibilities for the square on the first column and last row, and 10^2 for all the other.

This gives us 10^{2n(n%2B1)}\times 10^{2(3%2B2(n-1))%2B2} = 10^{2n(n%2B1)}\times 10^{4(n%2B1)} = 10^{2(n%2B1)(n%2B2)}. Then the proposition is proven by induction. \square

It is easy to see that if the edges of the squares are allowed to take m possible numbers, then there are m^{2n(n%2B1)} possible TetraVex puzzles.

See also

References