This package consists of two C programs designed to run under linux: pzip (for compressing) and punzip (for decompressing) data storage files for finite projective planes (expressed as incidence matrices, lists of lines through each point, or complete sets of mutually orthogonal Latin squares). Compression attained exceeds that possible with general compression utilities such as gzip (see Performance) since we take advantage of the special nature of this type of incidence information.
pzip n f m filename
punzip filename
where
n ∈ {2, 3, ..., 255} is the order of the plane
f ∈ {i, l, m} is the input format (incidence matrix, list of incidences, or mutually orthogonal Latin squares).
Incidence matrices are lists of 0's and 1's (whitespace characters, including blanks and endofline characters, if present, are ignored).
Lists consist of n^{2}+n+1 lists of n+1 integers each, separated by whitespace characters; each list represents the set of lines incident with a given point. Lines in these lists are denoted by integer values 0, 1, 2, ..., n^{2}+n (or 1, 2, 3, ..., n^{2}+n+1; but please be consistent).
Mutually orthogonal Latin squares (i.e. MOLS) are listed using any set of n symbols (each symbol represented by a single ASCII character) and whitespace characters, if present, are ignored.m ∈ {e, i} is the mode of recovery for the plane for purposes of decompression (exact or isomorphonly). Replacing the plane by an isomorph (a copy isomorphic to the original) allows for a slightly greater rate of compression. If an exact copy of the original plane is required, use the exact mode. In the case of Latin squares, the original set of symbols will be preserved in exact mode; but in isomorphonly mode, they will be replaced by a standard set of characters 0, 1, 2, ..., 9, a, b, c, ...
filename = name of file, in the current directory, containing the projective plane
Compression using pzip stores the compressed plane in the current directory in a new file named filename.pz and decompression using punzip will send the extracted plane to the standard output (by default, the display terminal).
We compare typical file sizes for projective planes. File size varies slightly for different planes of the same order; and even for isomorphic copies of the same plane; so sizes listed are only approximate. Execution time required for compression/decompression is minimal.
Storage requirements for planes of order 11:
original file

gzipped original

pzipped, exact mode 
pzipped, isomorphonly
mode


incidence matrix

17 KB

2 KB

264 bytes

64 bytes

list of line sets

5 KB

2 KB

264 bytes

64 bytes

10 MOLS(11)

1.3 KB

250 bytes

115 bytes

64 bytes

Storage requirements for planes of order 25:
original file

gzipped original

pzipped, exact mode 
pzipped, isomorphonly
mode


incidence matrix

410KB

23 KB

2300 bytes

950 bytes

list of line sets

63 KB

23 KB

2300 bytes

950 bytes

24 MOLS(25)

15 KB

9 KB

1300 bytes

950 bytes

Storage requirements for planes of order 49: (no one would bother here with incidence matrices!)
original file

gzipped original

pzipped, exact mode 
pzipped, isomorphonly
mode


list of line sets

550 KB

210 KB

12 KB

6 KB

48 MOLS(49)

110 KB

81 KB

8 KB

6 KB

For Desarguesian planes stored (in any format) with points and lines ordered systematically, gzip actually does better than the average cases tabulated above (almost as well as pzip!). But pzip is always the leader; usually by a long shot.
If you email me to bug me about these issues, I might get version 2.0 ready sooner.
Under Construction