let masters := 8; for{master in 1..masters} { let Codewords[master] := {}; let Whichslaves[master] := {}; let Codewords_trip[master] := {}; } for{master in 1..masters} for{slave in 1..masters, n1 in {1}, n2 in 1..7 diff {n1}, n3 in 1..7 diff {n1,n2}, n4 in 1..7 diff {n1,n2,n3}, n5 in 1..7 diff {n1,n2,n3,n4}, n6 in 1..7 diff {n1,n2,n3,n4,n5}, n7 in 1..7 diff {n1,n2,n3,n4,n5,n6} } { for{i in 1..7} { let f[i] := codes7vec[master,i]; let g[i] := if i = 1 then codes7vec[slave,n1] else if i = 2 then codes7vec[slave,n2] else if i = 3 then codes7vec[slave,n3] else if i = 4 then codes7vec[slave,n4] else if i = 5 then codes7vec[slave,n5] else if i = 6 then codes7vec[slave,n6] else if i = 7 then codes7vec[slave,n7] } if forall{i in 1..7,j in i+1..7} op_xor[ op_reverse[f[i],f[j]], op_reverse[g[i],g[j]] ] != 0 then { let Codewords[master] := Codewords[master] union {(g[1],g[2],g[3],g[4],g[5],g[6],g[7])}; let Whichslaves[master] := Whichslaves[master] union {slave}; } } display Whichslaves; #19 combinations when master=slave and none when maser!=slave for{master in 1..masters, (n1,n2,n3,n4,n5,n6,n7) in Codewords[master]} { for{i in 1..7} { let f[i] := codes7vec[master,i]; let g[i] := if i = 1 then n1 else if i = 2 then n2 else if i = 3 then n3 else if i = 4 then n4 else if i = 5 then n5 else if i = 6 then n6 else if i = 7 then n7 } if forall{i in 1..7, j in i+1..7, k in j+1..7} # for any three ( op_xor[ op_reverse[ op_xor[op_reverse[f[i],f[j]],11], op_xor[op_reverse[f[i],f[k]],11] ], op_reverse[ op_xor[op_reverse[g[i],g[j]],11], op_xor[op_reverse[g[i],g[k]],11] ] ] != 0 ) then { let Codewords_trip[master] := Codewords_trip[master] union {(n1,n2,n3,n4,n5,n6,n7)}; } } for{i in 1..masters} display card(Codewords[i]); for{i in 1..masters} display card(Codewords_trip[i]); for{i in 1..8} display i, Codes7set[i], Codewords_trip[i]; for{i in 1..8} display i, Codes7set[i], Codewords_trip[i] > a21_2-out.txt; close a21_2-out.txt;