K idZddlmZmZddlmZddlmZddlm Z dZ dZ dZ e d eZ e d e eZe d eZe d eeZd Zd Zd ZdZe deZe d eeZe deZe d eeZdZdZdZdZy)z/Benchmarks for polynomials over Galois fields. ) gf_from_dict gf_factor_sqf)ZZ)pi) nextprimecdt||jd|jd|ji||S)Nr)rone)npKs n/mnt/ssd/data/python-lab/Trading/venv/lib/python3.12/site-packages/sympy/polys/benchmarks/bench_galoispolys.py gathen_polyr s* AEE1aeeQ61 ==c|jg|dzz}td|dzD] }||dz dz|jz|z||<"|S)Nr )r range)r r r fis r shoup_polyrsW 1q5A 1a!e_)!a%! aee#q(!) Hrcf|ttd|ztzjS)Nr)rintrevalf)r r s rgenprimers( YsAqD2I,,./ 0 11r c:ttttdyN zassenhausmethodrf_10p_10rrr!timeit_gathen_poly_f10_zassenhausr&$b6rc:ttttdyNshoupr r"r%rrtimeit_gathen_poly_f10_shoupr+#$b1rc:ttttdyrrf_20p_20rr%rr!timeit_gathen_poly_f20_zassenhausr1'r'rc:ttttdyr)r.r%rrtimeit_gathen_poly_f20_shoupr3+r,rc:ttttdyrrF_10P_08rr%rr timeit_shoup_poly_F10_zassenhausr:5r'rc:ttttdyr)r7r%rrtimeit_shoup_poly_F10_shoupr<9r,rc:ttttdyrrF_20P_18rr%rr timeit_shoup_poly_F20_zassenhausrA=r'rc:ttttdyr)r>r%rrtimeit_shoup_poly_F20_shouprCAr,rN)__doc__sympy.polys.galoistoolsrrsympy.polys.domainsrsympy.core.numbersrsympy.ntheory.generaterrrrr$r#r0r/r&r+r1r3r9r8r@r?r:r<rArCr%rrrIs5@"!,> 2B2tR B2tR 72722"dBB"dB7272r