void SearchF() { GF2m* a; GF2m* b; for (int i=3;i< 50;i++) { a = new GF2m(i); b = new GF2m(i); a->SetOne(); b->SetPrimitive(); a->Inverse(); //dec(*a); printf("\nm=%i inverse() = %050s",i, a->Print(FMT_BIN, buf1)); power2(*b,b->BitLength); // b.Square(); dec(*b); printf("\nm=%i ^2^m-1 = %050s",i, b->Print(FMT_BIN, buf1)); printf("\n"); delete b; delete a; } { i = 167; a = new GF2m(i); b = new GF2m(i); a->SetOne(); b->SetPrimitive(); a->Inverse(); //dec(*a); printf("\nm=%i inverse() = %050s",i, a->Print(FMT_BIN, buf1)); power2(*b,b->BitLength); // b.Square(); dec(*b); printf("\nm=%i ^2^m-1 = %050s",i, b->Print(FMT_BIN, buf1)); printf("\n"); delete b; delete a; } }