argh, you could use contribs/intarray with a gist index...instead of N columns use an integer[] and gist-index it, then
writethe
equivalent of :
where (intersection of the search array with the data array) has at least
5 elements(or 4 elements)
(or at least 4 elements order by the number of elements desc)
in your table defs, you can express your unicity constraint on the array
with :CHECK( uniq(yourarrau) = yourarrau AND length(yourarrau)=6 )