by
This is the web site for our book, which was published by
SpringerVerlag, New York
in 1999

The literature on orthogonal arrays and related structures is vast
and this book attempts to put most of the available material in one
place. The authors have done a splendid job of presenting the vast
and scattered literature in the form of a book and thus deserve the
congratulations of the academic community. ... I have enjoyed
reading this book and find it very useful. I would strongly
recommend this book to anyone even remotely interested in the
combinatorics of orthogonal arrays.
 Aloke Dey, Journal of Statistical Planning and Inference,
87 (2000), 371373.

... it is a fascinating book for mathematicians. There is a feast of
information and detail. ... it is a good book for the mathematically
inclined statistician, who is interested in experimental design, to
have on the bookshelf.
 P.W.M. John, Short Book Reviews of the International Statistical Review,
20 (2000), 910.

... I like the statement of research problems throughout (...) many
were admirably focused.
 Deborah J. Street, Journal of the American Statistical Association,
95 (2000), 677678.
 From the review by Dieter Jungnickel in
Math Reviews, #2000h:05042:
... The book is well written and nice to read. It contains a wealth of concrete examples, many exercises (collected in problem
sections at the end of each chapter), some research problems and a generally quite thorough discussion of the available
literature. I can recommend it to anybody interested in discrete mathematics, in particular designs and codes, or in design
of experiments.
Who should read this book?
Anyone who is running experiments,
whether in a chemistry
lab or a manufacturing plant (trying to make
those alloys stronger),
or in agricultural or medical research.
Anyone
interested in one of the most fascinating areas of discrete
mathematics,
connected to statistics and coding theory, with applications
to computer science and cryptography.
This is the first book on the
subject
since its introduction more than fifty years ago,
and can be
used as a graduate text or as a reference work.
It features all of the
key results, many very useful tables, and a large number of exercises
and research problems. Most of the arrays that can be obtained by
the methods in this book are available electronically.
Orthogonal arrays are beautiful and useful.
They are essential in statistics and they are used in
computer science
and
cryptography.
In statistics they are primarily used in designing experiments, which simply means that they are
immensely important in all areas of human investigation:
for example in medicine, agriculture and
manufacturing.
Your automobile lasts longer today because of orthogonal arrays
["The new
mantra: MVT", Forbes, Mar. 11, 1996, pp. 114118.]
The mathematical theory is extremely beautiful:
orthogonal arrays are related to combinatorics, finite fields, geometry
and errorcorrecting codes.
The definition of an orthogonal array is simple and natural, and we know many elegant constructions
 yet there are at least as many unsolved problems.
Here is an example of an orthogonal array of strength 2:
0  0  0  0  0  0  0  0  0  0  0 
1  1  1  0  1  1  0  1  0  0  0 
0  1  1  1  0  1  1  0  1  0  0 
0  0  1  1  1  0  1  1  0  1  0 
0  0  0  1  1  1  0  1  1  0  1 
1  0  0  0  1  1  1  0  1  1  0 
0  1  0  0  0  1  1  1  0  1  1 
1  0  1  0  0  0  1  1  1  0  1 
1  1  0  1  0  0  0  1  1  1  0 
0  1  1  0  1  0  0  0  1  1  1 
1  0  1  1  0  1  0  0  0  1  1 
1  1  0  1  1  0  1  0  0  0  1 
Pick any two columns, say the first and the last:
0  0 
1  0 
0  0 
0  0 
0  1 
1  0 
0  1 
1  1 
1  0 
0  1 
1  1 
1  1 
Each of the four possible rows we might see there,
0 0, 0 1, 1 0, 1 1,
does appear, and they all appear the same number of times (three times,
in fact).
That's the property that makes it an orthogonal array.
Only 0's and 1's appear in that array, but for use in statistics
0 or 1
in the first column
might be replaced by
"butter" or "margarine" ,
and in the second column by
"sugar" or "no sugar" ,
and so on.
Or
"slow cooling"

or

"fast cooling",

"catalyst"

or

"no catalyst",

etc., depending on the application.
Since only 0's and 1's appear, this is called a 2level array.
There are 11 columns, which means we can vary the levels of up to 11 different variables,
and 12 rows, which means we are going to bake 12 different cakes, or produce
12 different samples of the alloy.
In short, we call this array an
OA(12,11,2,2)
The first "2" indicates the number of levels, and the second "2" the strength,
which is the number of columns where we are guaranteed to see all the possibilities
an equal number of times.
In an orthogonal array of strength 3 (with two levels), in any
three columns we would see each of the eight possibilities
000, 001, 010, 011, 100, 101, 110, 111
equally often.
(The formal definition is given in the first chapter.)
As already mentioned, the main applications of orthogonal arrays are in planning experiments.
The rows of the array represent the experiments or tests to be performed 
cakes to be baked, samples of alloy to be produced, integrated circuits to be etched,
test plots of crops to be grown, and so on.
The columns of the orthogonal array correspond to the different variables whose effects are being analyzed.
The entries in the array specify the levels at which the variables
are to be applied.
If a row of the orthogonal array reads
110100 ...
this could mean that in that test the first, second, fourth variables
(where the 1's occur) are to be set at their "high" levels,
and the third, fifth, sixth
variables (where the 0's occur) at their "low" levels.
By basing the experiment on an orthogonal array of strength t we ensure that all
possible combinations of up to t of the variables occur together equally often.
The aim here is to investigate not only the effects of the individual variables (or factors)
on the outcome, but also how the variables interact.
Obviously, even with a moderate number of factors and a small number of levels for each
factor, the number of possible level combinations for the factors increases rapidly.
It may therefore not be feasible to make even one observation at each of the
level combinations.
In such cases observations are made at only some of the level combinations,
and the purpose of the orthogonal array is to specify which level combinations
are to be used.
Such experiments are called "fractional factorial" experiments.
While there are nowadays other applications of orthogonal arrays in statistics (for example in computer
experiments and survey sampling),
the principal application is in the selection of
level combinations for fractional factorial experiments.
Since the rows of an orthogonal array represent runs (or tests or samples) 
which require money, time, and other resources  there are always practical
constraints on the number of rows that can be used in an experiment. Finding
the smallest possible number of rows is a problem of eminent importance. On
the other hand, for a given number of runs we may want to know the largest
number of columns that can be used in an orthogonal array, since this will
tell us how many variables can be studied. We also want the strength to be
large, though in many reallife applications this is set at 2, 3 or 4.
Then the main questions we ask are:

for which values of the numbers of rows, columns, strength and levels does
an orthogonal array exist?

how can we construct the array, if it exists?
Please contact
SpringerVerlag
directly. The ISBN number is 0387987665, and the publication
date was June 1999.
Professor A.S. Hedayat
Department of Mathematics, Statistics and Computer Science
University of Illinois at Chicago
851 South Morgan Street
Chicago, IL 606077045 USA
Home page
Email: hedayat(AT)uic.edu
Dr. N.J.A. Sloane
Information Sciences Research Center
AT&T Shannon Labs
180 Park Avenue
Florham Park, NJ 079320971 USA
Home page
Email: njasloane@gmail.com
Professor John Stufken
Department of Statistics
Snedecor Hall
Iowa State University
Ames, IA 50011 USA
Current address:
Professor and Head of Statistics,
University of Georgia,
204A Statistics Buikding,
Athens GA, USA
Home page
Email: jstufken(AT)uga.edu
 On page xiii, Professor Hedayat's home page is now
www.uic.edu/~hedayat/.
 On page 27: concerning (2.17) of Theorem 2.23, J. Quistorff
points out that W. Heise and P. Quattrocchi
(Informations und Codierungstheorie, 3rd edition,
Springer, 1995), establsh a stronger condition ("Satz 10" on
pages 325327), namely:
k<=s+t3 if s is even, k>=3 and (s2)*s*(s+1)*...*(s+t4)
is not congruent to 0 mod (t1)!.
For instance k<=39 if t=6 and s=36.
 On page 53, Table 3.25, in the 7th row, labeled 1 0 2, the last 9
entries should be changed from 1 0 2 1 0 2 1 0 2 to 1 2 0 1 2 0 1 2 0
 On page 73 we should not constrain B_{0} to be zero, but simply
require that it be positive (compare Sloane and Stufken, 1996). So
replace lines 7 (part of (4.21)) and 6 (part of (4.26)) by
B_{i} >= 0, 0 <= i <= k
 On page 81, line 9: MacWilliams and Sloane (1977) [not (1997)].
 On page 119, after Definition 6.14, we could have pointed
out that an aresolvable design is automatically a'resolvable
for all a' >= a with a' dividing N/s.
 Page 165, Table 7.37: We have worked out that there
are 7570 nonisomorphic OA(28,27,2,2)'s. Thus the
sequence in the first row of that table now reads
1 1 1 5 3 130 7570
(This is sequence
A048885
of the
OnLine Encyclopedia of Integer Sequences.)
 On page 193, lines 2 and 3, change `the next "Fermat's Last Theorem"'
to `the "Next Fermat Problem"'.
 On page 215, in Example 9.28, the bottom righthand
entry of the third matrix should be 1 not 0.
 On page 227, first sentence: We probably should have defined
"translate".
If A is an orthogonal array over an additive group (e.g. a field)
then if we add a fixed vector u to every run we get a new
orthogonal array with the same parameters as A;
this is called a translate of A.

Page 243:
We apologize for misspelling Malcolm Greig's name on line 1!
The same error appears in the index on page 407.

Page 300, middle of page, displayed equations for SN_1 and SN_2:
please change "m" to "N_2" in four places.

Page 304, middle: Sloane (1973) should be Sloane (1993).

Page 321: The following updates should be made to Table 12.3.
In column t=5, for k=7 and 8 change 24 to 2^{Edel (1996)}.
In column t=5, for k=28 through 32 change 18256^{EB} to 18128^{Edel (1996)}.
In column t=7, for k=11 change 416 to 48^{Edel (1996)}.
 Page 330, in the section on OA's with 36 runs,
interpolate the following entries:
2^{13} 6^{2} found by H. Xu (2002)
2^{10} 3^{8} 6^{1} found by Y. Zhang et al. (2001)
2^{10} 3^{1} 6^{2} found by H. Xu (2002)
2^{9} 3^{4} 6^{2} found by Y. Zhang et al. (2001)
2^{8} 6^{3} found by Y. Zhang et al. (2001)
2^{4} 3^{1} 6^{3} found by H. Xu (2002)
2^{3} 3^{9} 6^{1} found by Y. Zhang et al. (2001)
2^{3} 3^{2} 6^{3} found by H. Xu (2002)
2^{2} 3^{5} 6^{2} found by Y. Zhang et al. (2001)
2^{1} 3^{3} 6^{3} found by H. Xu (2002)
2^{1} 3^{1} 6^{3} found by Y. Zhang et al. (2001)
2^{1} 6^{3} found by Warren Kuhfeld (2002)
 see the online version
for the most uptodate information.
 On page 332, we now know exactly which 64run orthogonal arrays exist.
For this and much more about the lattices of parameter sets
of orthogonal arrays introduced on page 335 see
E. M. Rains, N. J. A. Sloane and J. Stufken,
The Lattice of NRun Orthogonal Arrays
[Abstract, ps, pdf]
In particular, the following entries should be added to
Table 12.7 on page 332, in the section dealing with arrays with 64 runs:
2^{5} 4^{17} 8^{1}
2^{5} 4^{10} 8^{4}
4^{14} 8^{3}
4^{7} 8^{6} .
The entry 4^{15} 8^{2} should be labeled with the "SS" (or section) symbol,
since it is now dominated by one of the new arrays.
 Also on page 332, many new 72run OAs have been discovered by
Y. Zhang et al. (2001).
See the online version
of this table
for the most uptodate information.
 Pages 329334: Numerous other improvements have been made to
Table 12.7 (parameter sets of known
orthogonal arrays with at most 100 runs):
see the online version
for the most uptodate information.
 Page 336, line 4: 'know' should be 'known'.
 Page 338, line 11, change OA(rs, s^{c}r^{1}, s)
to OA(rs, s^{c}r^{1}, 2).

Page 365, line 7:
Bierbrauer, J. (1993). Construction of orthogonal arrays.
J. Statist. Plann. Infer. 56, 207221.
should be
Bierbrauer, J. (1996). Construction of orthogonal arrays.
J. Statist. Plann. Infer. 56, 3947.
[Thanks to Martin Roetteler for noticing this.]
 Page 371, insert the following just before
the Cochran reference:
A. T. Clayman, K. M. Lawrence, G. L. Mullen, H. Niederreiter and N. J. A. Sloane (1999).
Updated Tables of Parameters of (T,M,S)Nets,
J. Combinatorial Designs,
7, pages 381393.
For the full tables see the
J.
Combinatorial Designs web site.
 Page 384, Laywine, Mullin and Suchower (1990) should be
Laywine, C. F., Mullen, G. L., and Suchower, S. J. (1990).
 Page 394: Rosenbaum (1997) has now appeared:
Rosenbaum, P. R. (1999). Blocking in compound dispersion experiments.
Technometrics, Vol. 41, 125134.

Page 397: Sloane (1973) should be Sloane (1993).
 Page 405: Zhang, Lu and Pang (1999) has now appeared:
Y. S. Zhang, Y. Lu and S. Pang (1999). Orthogonal arrays obtained by
orthogonal decomposition of projection matrices. Statistica Sinica
9, 595604.

Page 407, add
Djokovic, 147, 373

Page 409, add
Mullen, 193, 389
Sawade, 147, 395

Page 409, change
Sloane, 193, 245
to
Sloane, 193, 245, 304, 370, 386, 397

J. Bierbrauer (2002). Direct construction of additive
codes. J. Combin. Designs 10, 207216.

Brouwer, Andrie E., Cohen, Arjeh M. and Nguyen, V. M. (2006). Orthogonal
arrays of strength 3 and small run sizes. Journal of Statistical Planning
and Inference 136, pp. 32683280

Chai, Feng Shun, Mukerjee, Rahul and Suen, Chungyi,
Further results on orthogonal arrays plus one run plans.
J. Statist. Plann. Inference, 106 (2002), 287301.

Chateauneuf, M. and Kreher, D.L. (2002). On the state of strengththree
covering arrays. J. Combin. Designs 10, 217238.

D. De Cock and J. Stufken (2000). On Finding Mixed Orthogonal Arrays of
Strength 2 With Many 2Level
Factors. Statistics and Probability Letters, 50, 383388.
 A. Dey and R. Mukerjee (1998). Techniques for constructing asymmetric
orthogonal arrays. J. Combin. Inform. System Sc. 23, 351366.
 Wiebke S. Diestelkamp,
The decomposability of simple orthogonal arrays on 3 symbols
having t+1 rows and strength t, Journal of Combinatorial Designs,
Vol. 8 (2000), 442458. [Author's home page].
 Wiebke S. Diestelkamp,
Parameter inequalities for orthogonal arrays with
mixed levels. Designs, Codes and Cryptography, Vol. 33 (2004), 187197.
[Author's home page].
 Wiebke S. Diestelkamp and Jay H. Beder,
On the decomposition of orthogonal
arrays, Utilitas Mathematica, Vol. 61 (2002), 6586.
[Diestelkamp's home page].

Y. Edel (1996),
Eine
Verallgemeinerung von BCHCodes (Dissertation).

Longcheen Huwang, C. F. J. Wu, and C. H. Chen (2002). The idle column method:
design construction, properties and comparisons. Technometrics, 44,
347355.

S. Kageyama and K. Urata, (2000). Bounds on orthogonal arrays, Bulletin
Fac. Educ. Hiroshima Univ. , Part II, 49, 2532.

Kamali, F., Kharaghani, H., and Khosrovshahi, G.B. (2003). Some Bushtype
Hadamard matrices. J. Statistical Planning and Inference, Vol. 113, pp.
375384.

A. V. Khalyavin,
Estimates of the capacity of orthogonal arrays of large strength,
Moscow University Mathematics Bulletin,
Volume 65, 2010, Number 3, 130131.
 V. C. Mavron: A Construction Method for Complete Sets of Mutually Orthogonal Frequency Squares,
Electronic J. Combin.,
#N5, 2000.

Klaus Metsch,
Improvement of Bruck's completion theorem.
Des. Codes Cryptogr. 1 (1991), no. 2, 99116.

Mishima, Miwako, Jimbo, Masakazu, Shirakura, Teruhiro (2000). On the
optimality of orthogonal arrays in case of correlated errors. J. Statist.
Plann. Inference 88, 319338.

Max D. Morris, Leslie M. Moore and Michael D. McKay.
Using Orthogoanl Arrays in the Sensitivity Analysis of Computer Models,
Technomtrics, Vo. 50, No. 2, 2008, pp. 205215.
 E. M. Rains, N. J. A. Sloane and J. Stufken,
The Lattice of NRun Orthogonal Arrays, J. Statist. Plann. Inference, 102 (2002), 477500
[Abstract, ps, pdf].

Eric D. Schoen, Pieter T. Eendebak, Man V.M. Nguyen (2009).
Complete Enumeration of Purelevel and Mixedlevel Orthogonal Arrays.
Journal of Combinatorial Designs, to appear.

K. Sinha, V. Dhar, G. M. Saha and S. Kageyama (2002).
Balanced arrays of strength two from block designs. J. Combinatorial
Designs, 10, 303312.

Street, Deborah J. (1998).
Orthogonal arrays as designed experiments.
Bull. Inst. Combin. Appl. 24, 81101.

Suen, Chungyi (2005). Orthogonal arrays of strength three and size 2^r.
Statist. Sinica 15, 731749

Suen, C.Y, Das, A., and Dey, A. (2001). On the construction of asymmetric
orthogonal arrys. Statist. Sinica, 11, 241260.

Suen, C.Y. and Dey, A. (2003). Construction of asymmetric orthogonal
arrays through finite geometries. J. Statist. Plann. Inference, 115,
623635.
 Suen, Chungyi, Das, Ashish, and Dey, Aloke (2001). On the construction of
asymmetrical orthogonal arrays. Statistica Sinica 11, 241260.
 Yu. Tarannikov, P. Korolev, A. Botev. Autocorrelation coefficients and
correlation immunity of Boolean functions, Proceedings of Asiacrypt 2001,
Gold Coast, Australia, December 913, 2001, Lecture Notes in Computer
Science, V. 2248, pp. 460479, SpringerVerlag, 2001.
[Bound on OA's of large strength.]

V. D. Tonchev (2003), Affine designs and linear
orthogonal arrays, preprint.

H. Xu (2002),
An Algorithm for Constructing Orthogonal and NearlyOrthogonal Arrays with
Mixed Levels and Small Runs,
Technometrics, 44, 356368.
 S. Yamammoto, Y. Hyodo, M. Mitsuoka, H. Yumiba and T. Takahashi (1998).
Algorithm for the construction and classification of orthogonal arrays and its
feasibility. J. Combin. Inform. System Sc. 23, 7184.

Y. Zhang (2007),
Orthogonal arrays obtained by repeatingcolumn
difference matrices,
Discrete Math., 307, 246261.
 J.Z. Zhang, Z.S. You and Z.L. Li (2000),
Enumeration of binary orthogonal arrays
of strength 1, Discrete Math., 239 191198.
 Y. Zhang, L. Duan, Y. Lu and Z. Zheng (2002),
Construction of generalized Hadamard matrices D(r^m(r+1), r^m(r+1); p),
Journal of Statistical Planning and Inference,
104, 239258
 Y. Zhang, S. Pang and Y. Wang, (2001),
Orthogonal Arrays Obtained by Generalized Hadamard Product,
Discrete Math., 238 151170.
Note however that there are errors in the 72run
OAs as printed in the journal. See the web page
Library of orthogonal arrays
for corrected versions of these OAs.
Preface vii
Foreword by C. R. Rao xv
List of symbols xxiii
1 Introduction 1
2 Rao's Inequalities and Improvements 11

2.1 Introduction 11

2.2 Rao's Inequalities 12

2.3 Improvements on Rao's Bounds for Strength 2 and 3 17

2.4 Improvements on Rao's Bounds for Arrays of Index Unity 22

2.5 Orthogonal Arrays with Two Levels 27

2.6 Concluding Remarks 32

2.7 Notes on Chapter 2 33

2.8 Problems 33
3 Orthogonal Arrays and Galois Fields 37

3.1 Introduction 37

3.2 Bush's Construction 38

3.3 Addelman and Kempthorne's Construction 44

3.4 The RaoHamming Construction 49

3.5 Conditions for a Matrix to be an Orthogonal Array 54

3.6 Concluding Remarks 56

3.7 Problems 56
4 Orthogonal Arrays and ErrorCorrecting Codes 61

4.1 An Introduction to ErrorCorrecting Codes 61

4.2 Linear Codes 63

4.3 Linear Codes and Linear Orthogonal Arrays 65

4.4 Weight Enumerators and Delsarte's Theorem 67

4.5 The Linear Programming Bound 72

4.6 Concluding Remarks 82

4.7 Notes on Chapter 4 82

4.8 Problems 85
5 Construction of Orthogonal Arrays from Codes 87

5.1 Extending a Code by Adding More Coordinates 87

5.2 Cyclic Codes 88

5.3 The RaoHamming Construction Revisited 91

5.4 BCH Codes 93

5.5 ReedSolomon Codes 95

5.6 MDS Codes and Orthogonal Arrays of Index Unity 96

5.7 Quadratic Residue and Golay Codes 99

5.8 ReedMuller Codes 99

5.9 Codes from Finite Geometries 101

5.10 NordstromRobinson and Related Codes 102

5.11 Examples of Binary Codes and Orthogonal Arrays 103

5.12 Examples of Ternary Codes and Orthogonal Arrays 105

5.13 Examples of Quaternary Codes and Orthogonal Arrays 106

5.14 Notes on Chapter 5 108

5.15 Problems 109
6 Orthogonal Arrays and Difference Schemes 113

6.1 Difference Schemes 113

6.2 Orthogonal Arrays Via Difference Schemes 118

6.3 Bose and Bush's Recursive Construction 123

6.4 Difference Schemes of Index 2 127

6.5 Generalizations and Variations 132

6.6 Concluding Remarks 138

6.7 Notes on Chapter 6 140

6.8 Problems 141
7 Orthogonal Arrays and Hadamard Matrices 145

7.1 Introduction 145

7.2 Basic Properties of Hadamard Matrices 146

7.3 The Connection Between Hadamard Matrices and Orthogonal Arrays 148

7.4 Constructions for Hadamard Matrices 148

7.5 Hadamard Matrices of Orders up to 200 155

7.6 Notes on Chapter 7 163

7.7 Problems 165
8 Orthogonal Arrays and Latin Squares 167

8.1 Latin Squares and Orthogonal Latin Squares 168

8.2 Frequency Squares and Orthogonal Frequency Squares 173

8.3 Orthogonal Arrays from Pairwise Orthogonal Latin Squares 183

8.4 Concluding Remarks 191

8.5 Problems 196
9 Mixed Orthogonal Arrays 199

9.1 Introduction 199

9.2 The Rao Inequalities for Mixed Orthogonal Arrays 201

9.3 Constructing Mixed Orthogonal Arrays 203

9.4 Further Constructions 211

9.5 Notes on Chapter 9 219

9.6 Problems 220
10 Further Constructions and Related Structures 223

10.1 Constructions Inspired by Coding Theory 223

10.2 The Juxtaposition Construction 224

10.3 The (u,u+v) Construction 225

10.4 Construction X4 226

10.5 Orthogonal Arrays from Union of Translates of a Linear Code 228

10.6 Bounds on Large Orthogonal Arrays 228

10.7 Compound Orthogonal Arrays 230

10.8 Orthogonal MultiArrays 236

10.9 Transversal Designs, Resilient Functions and Nets 242

10.10 Schematic Orthogonal Arrays 245

10.11 Problems 246
11 Statistical Application of Orthogonal Arrays 247

11.1 Factorial Experiments 247

11.2 Notation and Terminology 249

11.3 Factorial Effects 251

11.4 Analysis of Experiments Based on Orthogonal Arrays 258

11.5 TwoLevel Fractional Factorials with a Defining Relation 272

11.6 Blocking for a 2^(kn) Fractional Factorial 282

11.7 Orthogonal MainEffects Plans and Orthogonal Arrays 288

11.8 Robust Design 298

11.9 Other Types of Designs 302

11.10 Notes on Chapter 11 305

11.11 Problems 308
12 Tables of Orthogonal Arrays 317

12.1 Tables of Orthogonal Arrays of Minimal Index 317

12.2 Description of Tables 12.112.3 318

12.3 Index Tables 324

12.4 If No Suitable Orthogonal Array Is Available 336

12.5 Connections with Other Structures 338

12.6 Other Tables 339
Appendix: Galois Fields 341
Bibliography 363
Up [
Return to top of page
]