Me funksionin [GAP][1]

    MaxOnes := n -> Maximum(List(Filtered(AsList(GF(2)^[n,n]),
                                 M->not ForAny(Tuples([1..n-1],2),
                                               s->ForAny(Cartesian([1..n-s[1]],[1..n-s[2]]),
                                                         t->ForAll(Flat(M{[s[1],s[1]+t[1]]}
                                                                         {[s[2],s[2]+t[2]]}),
                                                                   IsOne)))),
                                 N->Number(Flat(N),IsOne)));

ne kemi per shembull

    gap> MaxOnes(1);
    1
    gap> MaxOnes(2);
    3
    gap> MaxOnes(3);
    6
    gap> MaxOnes(4);
    9

dhe pergjigja e pyetjes eshte

    gap> MaxOnes(43);
    ( ... ju lutem prisni ... ju lutem prisni ... !! )


Ne te hidhura gurbete

kompjuterin mora me vete

kujtimi i kompjuterit

s'ishte ne prag te pafundesise

e shpejtesia e kompjuterit

s'ishte ne prag te pafundesise ...

  [1]: http://www.gap-system.org