language-icon Old Web
English
Sign In

Generating the nine-point graphs

1974 
A program has been written which recently generated all the (unlabelled) nine-point graphs. Written in MACRO-10 assembly language and run on a 165K PDP- 10, it generates the complete set of 274,668 graphs in less than six hours. The algorithm on which this program is based is discussed with an emphasis on coding of graphs and various programming techniques designed to save space and time during execution. The methods developed may have applications in other combinatorial generating problems. The two classic problem types in combinatorial analysis have been existence and enumeration of combinatorial structures. In the latter type of problem, one attempts to produce a formula giving the number of combinatorial structures obeying certain restrictions. It often happens that the descriptions of such structures are not unique and one must take care in the enumeration that no two descriptions correspond to the same structure. If they do, the two descriptions are called "isomorphic". In recent years, a third type of problem called "generative enumeration" (7), has appeared. Here, instead of a formula, one attempts to supply an actual list or catalogue of these structures using a computer. The generative enumeration of combinatorial structures is usually a challenging and interesting task. Recent efforts in this direction include the generative enumeration of eight-point geometries by Blackburn, Crapo and Higgs (l), generative enumeration of eighteen-point trees by P. Fraser (University of Waterloo—unpublished), generative enumeration of eight- point graphs by Heap (6). This list is far from exhaustive. The production of such catalogues of combinatorial structures have a further, pragmatic raison d'etre. Mathematicians may use them to check conjectures in low-order cases. Chemists and physicists sometimes find various discrete structures modelled by combinatorial objects: it becomes of interest to observe which structures so catalogued fail to appear in nature. General Description of the Algorithm. Most generative enumeration programs are conceptually divisible into two parts. In the first part, candidate objects are computed or retrieved from some list and in the second part a list is constructed to which the most recently considered candidate object is added if it fails in an isomorphism test when matched against all the objects already in the list. To this basic process, many efficiencies, on both the algorithmic
    • Correction
    • Source
    • Cite
    • Save
    • Machine Reading By IdeaReader
    7
    References
    15
    Citations
    NaN
    KQI
    []