Home > Software design >  Permutations of two lists with each three different outcomes (32,000 combinations)
Permutations of two lists with each three different outcomes (32,000 combinations)

Time:01-29

There are 50 Success Criteria (“requirements”) broken into two levels: Single-A (with 25 requirements) and Double-A (with 12 requirements). Using the philosophy of the distributive property, I need to create a sort of permutated list of all possible combinations from these two levels. The trouble I’m running into, though, there are various make ups of the levels themselves against one of three conformance levels.

A reviewer will go through each of the Success Criteria to fill out a VPAT. A VPAT will have the 50 Success Criteria listed out and my reviewer will look at the product, and based on the given success criteria, give it a result of “Does Not Support”, “Partially Supports”, or “Supports”. Each line can have only one result. So, a completed review could look like this:

Requirement # Level Status
1 Single-A SUPPORTS
2 Single-A SUPPORTS
3 Single-A PARTIALLY SUPPORTS
4 Single-A DOES NOT SUPPORT
5 Single-A DOES NOT SUPPORT
11 Double-A DOES NOT SUPPORT
12 Double-A PARTIALLY SUPPORTS
13 Double-A SUPPORTS
14 Double-A PARTIALLY SUPPORTS

The final tally, is what I’m trying to summarize (tab “Intended Result”). Every VPAT should output a pivoted result like this:

Single A Fail Single A Partial Single A Pass Double A Fail Double A Partial Double A Pass
0 0 25 0 0 12

Here’s my problem. There are 351 permutations for the Single A list and 91 for the Double A list. I’ve already mapped those out manually in the given tabs. Now, I need to permutate both lists by their three dimensions (nearly 32,000 possibilities), but I can’t figure it out with the several dimensions. Here’s the “distributive property”: From the Single-A list, row #1, I need to line up with all 91 of the Double-A list. Then, do it again for line #2 to all 91 lines. And on and on. enter image description here

As you can see, there are 31491 combinations. Here is the enter image description here

Helper Formulas

J2: =TOCOL(A2:C4,,1)
K2: =ROUNDUP(SEQUENCE(36,,1)/4,0)
L2: =INDEX(J2#,K2#)
M2: =WRAPCOLS(L2#,12)
Q2: =TOCOL(E2:G5,,0)
R2: =MOD(SEQUENCE(36,,1)-1,12) 1
S2: =INDEX(Q2#,R2#)
T2: =WRAPROWS(S2#,3)
X2: =HSTACK(M2#,T2#)
  • Related