Design DB

The aim of this project is to develop and host a searchable database of combinatorial and statistical designs. The DesignDB project is an offshoot of the research started at DesignTheory.org. While the original site contains mainly static and textual content, our focus is on providing dynamic content and direct application services.

External Representation

DesignDB uses JSON for the external representation of designs, that is when designs are presented, stored in files or exchanged between applications. Follow the links for the full specification:

The format is based on the original ext-rep specification created in an earlier phase at DesignTheory.org. In particular, the new format provides exactly the same mathematical content but uses JSON instead of XML.

Here is an example showing the only resolvable 2-(8,4,3) design. The "maximum_t" property together with the corresponding entry of the "t_wise_balanced" property shows that this design is also a 3-(8,4,1) design.

{
  "type" : "block_design", 
  "id" : "t2-v8-b14-r7-k4-L3-3", 
  "v" : 8, 
  "b" : 14, 
  "blocks" : [
    [0, 1, 2, 3], [0, 1, 4, 5], [0, 1, 6, 7], [0, 2, 4, 6], [0, 2, 5, 7], 
    [0, 3, 4, 7], [0, 3, 5, 6], [1, 2, 4, 7], [1, 2, 5, 6], [1, 3, 4, 6], 
    [1, 3, 5, 7], [2, 3, 4, 5], [2, 3, 6, 7], [4, 5, 6, 7]
  ], 
  "indicators" : {
    "repeated_blocks" : false, 
    "resolvable" : true, 
    "affine_resolvable" : {
      "mu" : 2
    }, 
    "equireplicate" : {
      "r" : 7
    }, 
    "constant_blocksize" : {
      "k" : 4
    }, 
    "t_design" : {
      "maximum_t" : 3
    }, 
    "connected" : {
      "no_components" : 1
    }, 
    "pairwise_balanced" : {
      "lambda" : 3
    }, 
    "variance_balanced" : true, 
    "efficiency_balanced" : true, 
    "cyclic" : false, 
    "one_rotational" : true
  }, 
  "combinatorial_properties" : {
    "point_concurrences" : [
      {
        "domain_base" : "points", 
        "n" : 8, 
        "k" : 1, 
        "ordered" : true, 
        "title" : "replication_numbers", 
        "maps" : [
          {
            "preimage" : ["entire_domain"], 
            "image" : 7
          }
        ]
      }, 
      {
        "domain_base" : "points", 
        "n" : 8, 
        "k" : 2, 
        "ordered" : true, 
        "title" : "pairwise_point_concurrences", 
        "maps" : [
          {
            "preimage" : ["entire_domain"], 
            "image" : 3
          }
        ]
      }, 
      {
        "domain_base" : "points", 
        "n" : 8, 
        "k" : 3, 
        "ordered" : true, 
        "maps" : [
          {
            "preimage" : ["entire_domain"], 
            "image" : 1
          }
        ]
      }
    ], 
    "block_concurrences" : [
      {
        "domain_base" : "blocks", 
        "n" : 14, 
        "k" : 1, 
        "ordered" : "unknown", 
        "title" : "block_sizes", 
        "maps" : [
          {
            "preimage_cardinality" : 14, 
            "image" : 4
          }
        ]
      }, 
      {
        "domain_base" : "blocks", 
        "n" : 14, 
        "k" : 2, 
        "ordered" : "unknown", 
        "title" : "pairwise_block_intersection_sizes", 
        "maps" : [
          {
            "preimage_cardinality" : 84, 
            "image" : 2
          }, 
          {
            "preimage_cardinality" : 7, 
            "image" : 0
          }
        ]
      }
    ], 
    "t_design_properties" : {
      "parameters" : {
        "t" : 2, 
        "v" : 8, 
        "b" : 14, 
        "r" : 7, 
        "k" : 4, 
        "lambda" : 3
      }, 
      "square" : false, 
      "projective_plane" : false, 
      "affine_plane" : false, 
      "steiner_system" : {
        "t" : 3
      }, 
      "steiner_triple_system" : false
    }, 
    "alpha_resolvable" : {
      "7" : true
    }, 
    "t_wise_balanced" : {
      "1" : {
        "lambda" : 7
      }, 
      "2" : {
        "lambda" : 3
      }, 
      "3" : {
        "lambda" : 1
      }
    }
  }, 
  "automorphism_group" : {
    "permutation_group" : {
      "degree" : 8, 
      "order" : 1344, 
      "domain" : "points", 
      "generators" : [
        [2, 3, 0, 1, 6, 7, 4, 5], [1, 0, 2, 3, 4, 5, 7, 6], 
        [0, 1, 3, 2, 5, 4, 6, 7], [1, 0, 3, 2, 4, 5, 6, 7], 
        [0, 1, 3, 2, 7, 6, 4, 5], [0, 2, 3, 1, 6, 4, 5, 7], 
        [0, 1, 5, 4, 3, 2, 6, 7]
      ], 
      "permutation_group_properties" : {
        "primitive" : true, 
        "generously_transitive" : true, 
        "multiplicity_free" : true, 
        "stratifiable" : true, 
        "no_orbits" : 1, 
        "degree_transitivity" : 3, 
        "rank" : 2, 
        "cycle_type_representatives" : [
          {
            "permutation" : [0, 2, 4, 6, 3, 1, 7, 5], 
            "cycle_type" : [1, 7], 
            "no_having_cycle_type" : 384
          }, 
          {
            "permutation" : [3, 2, 7, 6, 5, 4, 1, 0], 
            "cycle_type" : [2, 6], 
            "no_having_cycle_type" : 224
          }, 
          {
            "permutation" : [4, 5, 6, 7, 1, 0, 3, 2], 
            "cycle_type" : [4, 4], 
            "no_having_cycle_type" : 252
          }, 
          {
            "permutation" : [0, 1, 3, 2, 6, 7, 5, 4], 
            "cycle_type" : [1, 1, 2, 4], 
            "no_having_cycle_type" : 168
          }, 
          {
            "permutation" : [0, 1, 4, 5, 6, 7, 2, 3], 
            "cycle_type" : [1, 1, 3, 3], 
            "no_having_cycle_type" : 224
          }, 
          {
            "permutation" : [2, 3, 0, 1, 6, 7, 4, 5], 
            "cycle_type" : [2, 2, 2, 2], 
            "no_having_cycle_type" : 49
          }, 
          {
            "permutation" : [0, 1, 2, 3, 5, 4, 7, 6], 
            "cycle_type" : [1, 1, 1, 1, 2, 2], 
            "no_having_cycle_type" : 42
          }, 
          {
            "permutation" : [0, 1, 2, 3, 4, 5, 6, 7], 
            "cycle_type" : [1, 1, 1, 1, 1, 1, 1, 1], 
            "no_having_cycle_type" : 1
          }
        ]
      }
    }, 
    "automorphism_group_properties" : {
      "block_primitive" : false, 
      "no_block_orbits" : 1, 
      "degree_block_transitivity" : 1
    }
  }, 
  "resolutions" : {
    "pairwise_nonisomorphic" : true, 
    "all_classes_represented" : true, 
    "value" : [
      {
        "function_on_indices" : {
          "n" : 14, 
          "ordered" : true, 
          "title" : "resolution", 
          "maps" : [
            {
              "preimage" : [0, 13], 
              "image" : 0
            }, 
            {
              "preimage" : [1, 12], 
              "image" : 1
            }, 
            {
              "preimage" : [2, 11], 
              "image" : 2
            }, 
            {
              "preimage" : [3, 10], 
              "image" : 3
            }, 
            {
              "preimage" : [4, 9], 
              "image" : 4
            }, 
            {
              "preimage" : [5, 8], 
              "image" : 5
            }, 
            {
              "preimage" : [6, 7], 
              "image" : 6
            }
          ]
        }, 
        "automorphism_group" : {
          "permutation_group" : {
            "degree" : 8, 
            "order" : 1344, 
            "domain" : "points", 
            "generators" : [
              [1, 0, 3, 2, 5, 4, 7, 6], [2, 3, 0, 1, 6, 7, 4, 5], 
              [5, 4, 7, 6, 1, 0, 3, 2], [1, 0, 2, 3, 4, 5, 7, 6], 
              [1, 0, 2, 3, 4, 5, 7, 6], [1, 0, 3, 2, 4, 5, 6, 7], 
              [1, 0, 2, 3, 6, 7, 5, 4], [3, 1, 0, 2, 5, 7, 6, 4], 
              [0, 1, 5, 4, 3, 2, 6, 7]
            ]
          }
        }
      }
    ]
  }, 
  "statistical_properties" : {
    "precision" : 9, 
    "canonical_variances" : {
      "no_distinct" : 1, 
      "ordered" : true, 
      "value" : [
        {
          "multiplicity" : 7, 
          "canonical_variance" : 0.166666667
        }
      ]
    }, 
    "pairwise_variances" : {
      "domain_base" : "points", 
      "n" : 8, 
      "k" : 2, 
      "ordered" : true, 
      "maps" : [
        {
          "preimage" : ["entire_domain"], 
          "image" : 0.333333333
        }
      ]
    }, 
    "optimality_criteria" : {
      "phi_0" : {
        "value" : -12.5423163, 
        "absolute_efficiency" : 1, 
        "calculated_efficiency" : 1
      }, 
      "phi_1" : {
        "value" : 0.166666667, 
        "absolute_efficiency" : 1, 
        "calculated_efficiency" : 1
      }, 
      "phi_2" : {
        "value" : 0.0277777778, 
        "absolute_efficiency" : 1, 
        "calculated_efficiency" : 1
      }, 
      "maximum_pairwise_variances" : {
        "value" : 0.333333333, 
        "absolute_efficiency" : 1, 
        "calculated_efficiency" : 1
      }, 
      "E_criteria" : {
        "1" : {
          "value" : 0.166666667, 
          "absolute_efficiency" : 1, 
          "calculated_efficiency" : 1
        }, 
        "2" : {
          "value" : 0.333333333, 
          "absolute_efficiency" : 1, 
          "calculated_efficiency" : 1
        }, 
        "3" : {
          "value" : 0.5, 
          "absolute_efficiency" : 1, 
          "calculated_efficiency" : 1
        }, 
        "4" : {
          "value" : 0.666666667, 
          "absolute_efficiency" : 1, 
          "calculated_efficiency" : 1
        }, 
        "5" : {
          "value" : 0.833333333, 
          "absolute_efficiency" : 1, 
          "calculated_efficiency" : 1
        }, 
        "6" : {
          "value" : 1.0, 
          "absolute_efficiency" : 1, 
          "calculated_efficiency" : 1
        }, 
        "7" : {
          "value" : 1.16666667, 
          "absolute_efficiency" : 1, 
          "calculated_efficiency" : 1
        }
      }
    }, 
    "other_ordering_criteria" : {
      "trace_of_square_of_C" : {
        "value" : 252.0, 
        "absolute_comparison" : 1, 
        "calculated_comparison" : 1
      }, 
      "max_min_ratio_canonical_variances" : {
        "value" : 1.0, 
        "absolute_comparison" : 1, 
        "calculated_comparison" : 1
      }, 
      "max_min_ratio_pairwise_variances" : {
        "value" : 1.0, 
        "absolute_comparison" : 1, 
        "calculated_comparison" : 1
      }, 
      "no_distinct_canonical_variances" : {
        "value" : 1, 
        "absolute_comparison" : 1, 
        "calculated_comparison" : 1
      }, 
      "no_distinct_pairwise_variances" : {
        "value" : 1, 
        "absolute_comparison" : 1, 
        "calculated_comparison" : 1
      }
    }, 
    "canonical_efficiency_factors" : {
      "no_distinct" : 1, 
      "ordered" : true, 
      "value" : [
        {
          "multiplicity" : 7, 
          "canonical_efficiency_factor" : 0.857142857
        }
      ]
    }, 
    "functions_of_efficiency_factors" : {
      "harmonic_mean" : 0.857142857, 
      "geometric_mean" : 0.857142857, 
      "minimum" : 0.857142857
    }
  }
}

All the designs available at DesignTheory.org have been converted into the new format. Then they were uploaded into the searchable database.

Database Links

Unfortunately, the old computer hosting our DesignDB has been decommissioned. We intend to find a more stable hosting solution and modify DesignDB accordingly sometime in the future.

The compressed ext-rep files are are still available for each design category.

Contact: peter@cs.dal.ca