Charles J. Colbourn Computer Science and Engineering Arizona State University, Tempe, AZ Charles J. Colbourn Computer Science and Engineering Arizona State.

Slides:



Advertisements
Similar presentations
Divide-and-Conquer CIS 606 Spring 2010.
Advertisements

10 October 2006 Foundations of Logic and Constraint Programming 1 Unification ­An overview Need for Unification Ranked alfabeths and terms. Substitutions.
Finite Automata CPSC 388 Ellen Walker Hiram College.
D ATABASE S YSTEMS I R ELATIONAL A LGEBRA. 22 R ELATIONAL Q UERY L ANGUAGES Query languages (QL): Allow manipulation and retrieval of data from a database.
Types of Algorithms.
Cryptography and Network Security Chapter 5 Fifth Edition by William Stallings Lecture slides by Lawrie Brown.
1 12. Principles of Parameter Estimation The purpose of this lecture is to illustrate the usefulness of the various concepts introduced and studied in.
Bounds on Code Length Theorem: Let l ∗ 1, l ∗ 2,..., l ∗ m be optimal codeword lengths for a source distribution p and a D-ary alphabet, and let L ∗ be.
On the size of dissociated bases Raphael Yuster University of Haifa Joint work with Vsevolod Lev University of Haifa.
Lesson 8 Gauss Jordan Elimination
Tirgul 10 Rehearsal about Universal Hashing Solving two problems from theoretical exercises: –T2 q. 1 –T3 q. 2.
1 Algorithms for Large Data Sets Ziv Bar-Yossef Lecture 12 June 18, 2006
Branch and Bound Similar to backtracking in generating a search tree and looking for one or more solutions Different in that the “objective” is constrained.
EGR 106 – Week 2 – Arrays Definition, size, and terminology Construction methods Addressing and sub-arrays Some useful functions for arrays Character arrays.
Tirgul 8 Universal Hashing Remarks on Programming Exercise 1 Solution to question 2 in theoretical homework 2.
Contents Introduction Related problems Constructions –Welch construction –Lempel construction –Golomb construction Special properties –Periodicity –Nonattacking.
On Testing Convexity and Submodularity Michal Parnas Dana Ron Ronitt Rubinfeld.
Hashing General idea: Get a large array
Recursive Definitions Rosen, 3.4 Recursive (or inductive) Definitions Sometimes easier to define an object in terms of itself. This process is called.
Start with a puzzle… There are four occurrences of the pattern  = 132 in the sequence  = 13254: Can you find.
May 29, 2008 GNFS polynomials Peter L. Montgomery Microsoft Research, USA 1 Abstract The Number Field Sieve is asymptotically the fastest known algorithm.
Ch 8.1 Numerical Methods: The Euler or Tangent Line Method
Sequences Informally, a sequence is a set of elements written in a row. – This concept is represented in CS using one- dimensional arrays The goal of mathematics.
Copyright © Cengage Learning. All rights reserved.
Systems of Linear Equation and Matrices
Chapter 6.7 Determinants. In this chapter all matrices are square; for example: 1x1 (what is a 1x1 matrix, in fact?), 2x2, 3x3 Our goal is to introduce.
1 A fast algorithm for Maximum Subset Matching Noga Alon & Raphael Yuster.
Mathematics Review Exponents Logarithms Series Modular arithmetic Proofs.
Data Structures and Algorithm Analysis Hashing Lecturer: Jing Liu Homepage:
CS212: DATA STRUCTURES Lecture 10:Hashing 1. Outline 2  Map Abstract Data type  Map Abstract Data type methods  What is hash  Hash tables  Bucket.
Matrix Completion Problems for Various Classes of P-Matrices Leslie Hogben Department of Mathematics, Iowa State University, Ames, IA 50011
Systems of Linear Equations: Matrices Chapter Overview A matrix is simply a rectangular array of numbers. Matrices are used to organize information.
Area/Sigma Notation Objective: To define area for plane regions with curvilinear boundaries. To use Sigma Notation to find areas.
WEEK 8 SYSTEMS OF EQUATIONS DETERMINANTS AND CRAMER’S RULE.
Order Statistics The ith order statistic in a set of n elements is the ith smallest element The minimum is thus the 1st order statistic The maximum is.
Edge-disjoint induced subgraphs with given minimum degree Raphael Yuster 2012.
Algorithms and their Applications CS2004 ( ) Dr Stephen Swift 3.1 Mathematical Foundation.
2-Level Minimization Classic Problem in Switching Theory Tabulation Method Transformed to “Set Covering Problem” “Set Covering Problem” is Intractable.
Chapter 2 Mathematical preliminaries 2.1 Set, Relation and Functions 2.2 Proof Methods 2.3 Logarithms 2.4 Floor and Ceiling Functions 2.5 Factorial and.
The Selection Problem. 2 Median and Order Statistics In this section, we will study algorithms for finding the i th smallest element in a set of n elements.
David Luebke 1 10/25/2015 CS 332: Algorithms Skip Lists Hash Tables.
Sudoku and Orthogonality
Efficient Key Predistribution for Grid – Based Wireless Sensor Networks.
1.1 CAS CS 460/660 Introduction to Database Systems Relational Algebra.
1 Rainbow Decompositions Raphael Yuster University of Haifa Proc. Amer. Math. Soc. (2008), to appear.
PROBABILITY AND STATISTICS FOR ENGINEERING Hossein Sameti Department of Computer Engineering Sharif University of Technology Principles of Parameter Estimation.
Relations, Functions, and Matrices Mathematical Structures for Computer Science Chapter 4 Copyright © 2006 W.H. Freeman & Co.MSCS Slides Relations, Functions.
Matrix Completion Problems for Various Classes of P-Matrices Leslie Hogben Department of Mathematics, Iowa State University, Ames, IA 50011
>> x = [ ]; y = 2*x y = Arrays x and y are one dimensional arrays called vectors. In MATLAB all variables are arrays. They allow functions.
Latin squares Def: A Latin square of order n is a quadruple (R, C, S; L) where R, C and S are sets of cardinality n and L is a mapping L: R × C → S such.
Mixed Covering Arrays on Graphs Presenter: Latifa Zekaoui Joint work with Karen Meagher and Lucia Moura to appear in the Journal of Combinatorial Designs.
College Algebra Sixth Edition James Stewart Lothar Redlin Saleem Watson.
International Iran conference on Quantum Information September 2007, Kish Island Evaluation of bounds of codes defined over hexagonal and honeycomb lattices.
Area/Sigma Notation Objective: To define area for plane regions with curvilinear boundaries. To use Sigma Notation to find areas.
1 Covering Non-uniform Hypergraphs Endre Boros Yair Caro Zoltán Füredi Raphael Yuster.
1 Finding a decomposition of a graph T into isomorphic copies of a graph G is a classical problem in Combinatorics. The G-decomposition of T is balanced.
拉丁方陣 交大應數系 蔡奕正. Definition A Latin square of order n with entries from an n-set X is an n * n array L in which every cell contains an element of X such.
Chapter 15 Running Time Analysis. Topics Orders of Magnitude and Big-Oh Notation Running Time Analysis of Algorithms –Counting Statements –Evaluating.
Area/Sigma Notation Objective: To define area for plane regions with curvilinear boundaries. To use Sigma Notation to find areas.
Dynamic Programming for the Edit Distance Problem.
Advanced Algorithms Analysis and Design By Dr. Nazir Ahmad Zafar Dr Nazir A. Zafar Advanced Algorithms Analysis and Design.
PIVOTING The pivot or pivot element is the element of a matrix, or an array, which is selected first by an algorithm (e.g. Gaussian elimination, simplex.
All-pairs Shortest paths Transitive Closure
Unit-III Algebraic Structures
12. Principles of Parameter Estimation
Data Structures Review Session
Applied Combinatorics, 4th Ed. Alan Tucker
Automatic Test Generation for N-way Combinatorial Testing
12. Principles of Parameter Estimation
Algorithm Course Algorithms Lecture 3 Sorting Algorithm-1
Presentation transcript:

Charles J. Colbourn Computer Science and Engineering Arizona State University, Tempe, AZ Charles J. Colbourn Computer Science and Engineering Arizona State University, Tempe, AZ Constructions of Covering Arrays

Challenge: Deleting a Symbol It is well known that CAN(2,k,v) ≤ CAN(2,k,v-1) – 1.

Challenge: Deleting a Symbol Proof 1: Make the first row constant by renaming symbols. Then delete it.

000* 111* *0 * Challenge: Deleting a Symbol Proof 2: Change all of largest symbol in each column to * = “don’t care” Then fill in * with entries from first row. Then delete first row.

Challenge: Deleting a Symbol First rename symbols and delete first row.

111 * 222 * * * 1 2*1 1 *21 2 1*2 2 21* 2 Challenge: Deleting a Symbol Second replace all elements in the deleted row by *

111 * 222 * Challenge: Deleting a Symbol Now move top row elements into * positions and delete top row.

222 * Challenge: Deleting a Symbol This works in general and shows that CAN(2,k,v) ≤ CAN(2,k,v-1) – 2. In fact it works for mixed covering arrays by removing one level from each factor.

Challenge: Deleting a Symbol Is it always the case for k,v ≥ 2 that CAN(2,k,v) ≤ CAN(2,k,v-1) – 3 ? For mixed CAs too? True for OAs from the projective plane.

A Testing Problem The user is presented with n parameters (“factors”), each having some finite number of values (“levels”). The j’th factor has s j levels; continuous factors are modelled by a finite number of intervals. Initially, we assume that levels for factors can be selected independently.

Covering Arrays A covering array is an N x k array. Symbols in column j are chosen from an alphabet of size s j Choosing any N x t subarray, we find every possible 1 x t row occurring at least once; t is the strength of the array. Evidently, the number N of rows must be at least the product of the t largest factor level sizes

Covering Arrays In general this is not sufficient. For constant t > 1 and factor level sizes, the number of rows grows at least as quickly as log n. Indeed, even for t=2, every two columns of the covering array must be distinct and this alone suffices to obtain a log n lower bound.

Covering Arrays CA (N;t,k,v) –An N x k array where each N x t sub-array contains all ordered t-sets at least times CA(6;2,5,2)

Covering Arrays The goal, given k, t, and the s j ’s, is to minimize N. Or given N, t, and the s j ’s, to maximize k.

Covering Arrays Research on the problem has fallen into four main categories: –lower bounds –combinatorial/algebraic constructions direct methods recursive methods –probabilistic asymptotic constructions –computational constructions exact methods heuristic methods

Basic Combinatorial Methods Consider the problem of constructing a covering array of strength two, with g levels per factor, and k factors. We could hope to have as few as g 2 rows (tests), and if this were to happen then every 2-tuple of values would occur exactly once (a stronger condition than ‘at least once’). If we strengthen the condition to ‘exactly once’, the covering array is an orthogonal array of index one.

Orthogonal Arrays OA (N;t,k,v) - An N x k array where each N x t sub- array contains all ordered t-sets exactly times OA(8;3,4,2)

Orthogonal Arrays For strength two, an orthogonal array of index one with g symbols and k columns exists –only when k ≤ g+1, –if k ≤ g+1 and g is a power of a prime. For primes, form rows of the array by including (i,j,i+j,i+2j,…,i+(g-1)j) for all choices of i and j, doing arithmetic modulo g as needed. For prime powers, the symbols used are those of the finite field. For non-prime-powers, lots of open questions!

Direct Methods OAs provide a direct construction of covering arrays. Another direct technique chooses a group on g symbols, and forms a ‘base’ or ‘starter’ array which covers every orbit of t-tuples under the action of the group. Then applying the action of the group to the starter array and retaining all distinct rows yields a covering array (typically exhibiting much symmetry as a consequence of the group action).

Direct Methods An example (-,0,1,3,0,2,1,4) Form eight cyclic shifts Add a column of 0 entries Develop modulo 5 Add the 6 constant rows (with – in last column) to get CA(46;2,9,6)

Direct Methods Develop modulo 5 Add 6 constant rows (with – in last column)

Direct Methods Stevens/Ling/Mendelsohn: From PG(2,q) delete a point to obtain a frame resolvable q-GDD of type (q-1) (q+1). Extend a frame pc and fill in “don’t care’’ positions to get a CA(2,q+2,q-1) with q rows. (C, 2005) Can be extended to get a CA(2,q+1+x,q-x) for all nonnegative x. Relies only on having a row with no twice-covered pair.

Direct Methods Sherwood: Rather than use the field as a group of symmetries, use partial test suites build from the field and a compact means of determining when t such partial suites cover all possibilities. Sherwood, Martirosyan, C (2006): many new constructions for t=3,4,5 Walker, C (preprint): and for t=5,6,7.

Recursive Methods B A simple example (the Roux (1987) method). B AA A is a strength 3 covering array, 2 levels per factor. B is a strength 2 covering array, 2 levels per factor. The bottom contains complementary arrays. The result is a strength 3 covering array.

Generalizing Roux Extensions by –Chateauneuf/Kreher (2001) to t=3, all g –Cohen/C/Ling (2004) to t=3, adjoining more than two copies, all g –Hartman/Raskin (2004) to t=4 –Martirosyan/Tran Van Trung (2004) to all t under certain assumptions –Martirosyan/C (2005) to all t, all g. –C/Martirosyan/Trung/Walker(2006) for t=3, t=4.

Roux for two Prior to the Roux construction for t ≥ 3, Poljak and Tuza had studied a direct product construction when t=2. This forms the basis of methods of Williams, Stevens, and Cohen & Fredman.

Roux for two Let A be a CA(N;2,k,v) and B a CA(M;2,f,v) is a CA(N+M;2,kf,v). AAA ……… b1b1b1b1b1b1b1b1 b2b2b2b2b2b2b2b2 bfbfbfbfbfbfbfbf

Roux for two Stevens showed that when each array has v constant rows, the resulting array has v duplicated rows and hence v rows can be removed. A recent extension (CMMSSY, 2006) shows that even when the arrays have “nearly constant” rows, again v rows can be eliminated. And an extension to mixed CAs.

Roux for two Let O be the all zero matrix Let C be a matrix with v rows, all of which are constant and distinct An SCA(N;2,k,v) A looks like A1 OC A2

Roux for two Let A be a SCA(N;2,k,v), B a SCA(M;2,f,v) minus v rows forming C,O A1 A2 A1 ……… b1b1b1b1b1b1b1b1 b2b2b2b2b2b2b2b2 bfbfbfbfbfbfbfbf OO C O has M+N-v rows

PHF and Turan Families Of particular note, but not enough time to discuss in detail: –Bierbrauer/Schellwat (1999): use a “perfect hash family” of strength t whose number of symbols equals the number of columns of the CA. Substitute columns for symbols. Asymptotically the best thing since sliced bread. –Hartman (2002): Turan families used much like above but more accurate for arrays with few symbols.

Four Values Per Factor

Six Values Per Factor

Ten Values Per Factor

13 Values Per Factor

Tables For more tables than you can shake a stick at (and updates of the ones here), see –Colbourn (Disc Math, to appear) for t=2 –C/M/T/W (DCC, to appear) for t=3, 4 –Walker/C (preprint) for t=5 We need better *general* direct constructions for small t, better recursions for large t.

Thanks