class SET_POLYI_PRIM


Flattened version is here



Public


Readonly Shareds
shared DpolyMs:POLYS_INTI;
shared PolyF:POLYS_INTI;
**** factor
shared PolyN:POLYS_INTI;
****
shared TblS:ARRAY{INTI};
**** work table
shared V0,V1,V1nS:ARRAY{INTI};
shared V0,V1,V1nS:ARRAY{INTI};
shared V0,V1,V1nS:ARRAY{INTI};

Writable Shareds
shared DpolyMs:POLYS_INTI;
shared PolyF:POLYS_INTI;
**** factor
shared PolyN:POLYS_INTI;
****
shared TblS:ARRAY{INTI};
**** work table
shared V0,V1,V1nS:ARRAY{INTI};
shared V0,V1,V1nS:ARRAY{INTI};
shared V0,V1,V1nS:ARRAY{INTI};

Features
setPolyR(degD:INT,prime:INTI, out polyF:POLYS_INTI):BOOL
**** TRUE if Set set polynomial PolyF[] from TblS[]
__From_dPolyM_in_Zp[x],_recover_polyF_in_Z[x].
local var: dv,dt,at, deg,diff,i, tbl0, tbl2
setPolyRPrimitive(prime:INTI,
setV0Tbl(degD:INT)
**** make table PolyN. Elements are non-zero, because PolyN has no factor (x-a) in this range
setV1Tbl(degD:INT)
**** make table DpolyMs
setVal(ite,degD:INT, prime:INTI):BOOL
**** "true" if ffind a factor.
__Note_that_change_PolyN_and_PolyM.

The Sather Home Page