U
    —9%e©	  ã                   @   sN  d dl Z d dlmZ d dlmZmZmZmZmZ dddgddd	gd
ddgdddgdddgdddgdddgdddgdddgdddgg
Zdddgd d!dgd"d#dgd$d%dgd&d'dgd(d)dgd*d+dgd,d-dgd.d/dgd0d1dgd2d3dgd4d5dgd6d7dggZ	dd8 dd9 dggZ
d>d:d;„Zed<krJee jƒd=kr2e jd= ndZee	e
gZeeeƒ dS )?é    N)Útime)Údiscrete_logÚ_discrete_log_trial_mulÚ_discrete_log_shanks_stepsÚ_discrete_log_pollard_rhoÚ_discrete_log_pohlig_hellmané¿   é¾   é   i/¶  i.¶  é   ióªá iòªá é   l   ;S${ l   :S${ l   I\ÿ“l   H\ÿ“é   l   ýpS£@ l   üpS£@ l   ‡1Urpº l   †1Urpº é   l   ©Z:6Ÿ'û' l   ¨Z:6Ÿ'û' é   l   ÃbÌJT(
Xl   ÂbÌJT(
Xl   E<ÆZº;n l   D<ÆZº;n éã   éq   i	  iÇ  iÏ_  iç/  i‡¿ iÃß i«|% iU¾ i[àvi-p» i¯Ã¤i×aRl   )ß$ i…Ô7Il   ß¹p l   ïM\8 l   ¯<gä l   Wž3r l   ‹Zðl   Å-xl   7…S`Yl   JÂ)°,l   L3CÆ} l   f™!ã> év   ét   c                 C   sÈ   |d krt }n@|dkrt}n2|dkr*t}n$|dkr8t}n|dkrFt}ntdƒ‚t| ƒD ]l\}}t|ƒD ]Z\}\}}}tƒ }	||t||d |ƒ||ƒ}
tƒ |	 }	t	d|||	f ƒ |
|d ksft
‚qfqVd S )NZtrialZshanksÚrhoÚphzCArgument 'algo' should be one of ('trial', 'shanks', 'rho' or 'ph')é   z[%02d-%03d] %15.10f)r   r   r   r   r   Ú
ValueErrorÚ	enumerater   ÚpowÚprintÚAssertionError)Údata_setÚalgoÚfÚiÚdataÚjÚnÚpÚgÚtÚl© r'   úb/var/www/html/Darija-Ai-API/env/lib/python3.8/site-packages/sympy/benchmarks/bench_discrete_log.pyÚbench_discrete_log3   s$    
r)   Ú__main__r   )N)Úsysr   Zsympy.ntheory.residue_ntheoryr   r   r   r   r   Z
data_set_1Z
data_set_2Z
data_set_3r)   Ú__name__ÚlenÚargvr   r   r'   r'   r'   r(   Ú<module>   sP   õòþ

ÿÿý