Ë
    ÜÍ:jï  ã                   óô  — d dl Zd dlZd dlmZ d dlmZ d dlmZ d dl	m
Z
 d dlmZmZ d dlmZ ej                   j#                  deej$                  gz   «      ej                   j#                  d	d
dg«      ej                   j#                  dddg«      d„ «       «       «       Zd"d„Zd„ ZdZd„ Zej                   j0                  ej                   j#                  ddedfg«      d„ «       «       Zej                   j#                  ddedz   g«      d„ «       Zej                   j0                  ej                   j#                  dedfdg«      d„ «       «       Zej                   j#                  d dedz   g«      d!„ «       Zy)#é    N)Ústats)ÚLogisticRegression)Ú	LinearSVC)Úl1_min_c)Úbounded_rand_int_wrapÚset_seed_wrap)ÚCSR_CONTAINERSÚX_containerÚlossÚsquared_hingeÚlogÚintercept_labelúno-interceptúfit-interceptc                 ón   — ddidddœdœ} | ddgdd	gd	d	gd	d	gg«      }g d
¢}||   }t        |||fi |¤Ž y )NÚfit_interceptFTé
   )r   Úintercept_scaling)r   r   éÿÿÿÿr   é   )r   r   r   r   )Úcheck_l1_min_c)r
   r   r   Ú
interceptsÚXÚYÚintercept_paramss          úr/home/mcse/projects/srt_converter/srt-converter-venv/lib/python3.12/site-packages/sklearn/svm/tests/test_bounds.pyÚtest_l1_min_cr      sb   € ð
 )¨%Ð0Ø+/ÀbÑIñ€Jñ
 	�b˜!�W˜q !˜f q¨! f¨q°!¨fÐ5Ó6€AÚ€AØ! /Ñ2ÐÜ�1�a˜Ñ2Ð!1Ó2ó    c                 óv  — t        | ||||¬«      }t        dd¬«      t        ddd¬«      d	œ|   }||_        ||_        ||_        |j                  | |«       t        j                  |j                  «      d
k(  j                  «       sJ ‚t        j                  |j                  «      d
k(  j                  «       sJ ‚|dz  |_        |j                  | |«       t        j                  |j                  «      d
k7  j                  «       s3t        j                  |j                  «      d
k7  j                  «       sJ ‚y y )N)r   r   r   r   Ú	liblinear)Úl1_ratioÚsolverr   Úl1F)r   ÚpenaltyÚdual)r   r   r   g)\�Âõ(ð?)r   r   r   r   r   ÚCÚfitÚnpÚasarrayÚcoef_ÚallÚ
intercept_Úany)r   Úyr   r   r   Úmin_cÚclfs          r   r   r      s  € ÜØ	Ø	ØØ#Ø+ô€Eô "¨1°[ÔAÜ"¨ÀÈEÔRñð ñ€Cð
 &€CÔØ-€CÔà€C„EØ‡G�GˆAˆq„MÜ�J‰J�s—y‘yÓ! QÑ&×+Ñ+Ô-Ð-Ð-Ü�J‰J�s—~‘~Ó&¨!Ñ+×0Ñ0Ô2Ð2Ð2à�D‰L€C„EØ‡G�GˆAˆq„MÜ�J‰J�s—y‘yÓ! QÑ&×+Ñ+Ô-´"·*±*¸S¿^¹^Ó2LÐPQÑ2Q×1VÑ1VÔ1XÐXÐXÐ1XÐ-r   c                  ó�   — ddgddgg} ddg}t        j                  t        «      5  t        | |«       d d d «       y # 1 sw Y   y xY w)Nr   r   )ÚpytestÚraisesÚ
ValueErrorr   )r   r.   s     r   Útest_ill_posed_min_cr5   6   sG   € Ø
ˆQˆ�!�Q�Ð€AØ	
ˆAˆ€AÜ	�‰”zÓ	"ñ Ü��AŒ÷÷ ñ ús	   ¦<¼Al   ÿÿ c                  ó¨   ‡— t        d«      D � cg c]  } t        d«      ‘Œ c} Št        d„ ‰D «       «      sJ ‚t        ˆfd„‰D «       «      rJ ‚yc c} w )a  Test that bounded_rand_int_wrap without seeding respects the range

    Note this test should pass either if executed alone, or in conjunctions
    with other tests that call set_seed explicit in any order: it checks
    invariants on the RNG instead of specific values.
    r   éd   c              3   ó<   K  — | ]  }d |cxk  xr dk  nc –— Œ y­w)r   r7   N© )Ú.0Úxs     r   ú	<genexpr>z'test_newrand_default.<locals>.<genexpr>H   s   è ø€ Ò/ ˆq�AŽ|˜�|ˆ|Ñ/ùs   ‚c              3   ó.   •K  — | ]  }|‰d    k(  –— Œ y­w)r   Nr9   )r:   r;   Ú	generateds     €r   r<   z'test_newrand_default.<locals>.<genexpr>I   s   øè ø€ Ò8¨�1˜	 !™Õ$Ñ8ùs   ƒN)Úranger   r+   )Ú_r>   s    @r   Útest_newrand_defaultrA   @   sP   ø€ ô 6;¸2³YÖ?°Ô& sÕ+Ò?€IÜÑ/ YÔ/Ô/Ð/Ð/ÜÓ8¨iÔ8Ô8Ð8Ð8Ð8ùò @s   �Azseed, expected)r   é6   é	   c                 ó>   — t        | «       t        d«      }||k(  sJ ‚y)z3Test that `set_seed` produces deterministic resultsr7   N)r   r   )ÚseedÚexpectedr>   s      r   Útest_newrand_set_seedrG   L   s$   € ô �$ÔÜ% cÓ*€IØ˜Ò Ð Ñ r   rE   r   r   c                 óv   — t        j                  t        «      5  t        | «       ddd«       y# 1 sw Y   yxY w)z=Test that `set_seed_wrap` is defined for unsigned 32bits intsN)r2   r3   ÚOverflowErrorr   )rE   s    r   Útest_newrand_set_seed_overflowrJ   U   s-   € ô 
�‰”}Ó	%ñ Ü�dÔ÷÷ ñ úó   š/¯8zrange_, n_ptsi'  )r7   é   c                 ó6  — t        d«       d}g }t        j                  d| ¬«      }t        |«      D ]^  }t        |«      D �cg c]  }t	        | «      ‘Œ }}t        j
                  ||j                  «      }|j                  |j                  «       Œ` t        j                  dd¬«      }t        j
                  ||j                  «      }	|	j                  dkD  sJ d|	j                  › d�«       ‚t        j                  |d	¬
«      }
|
dkD  sJ d|
› d�«       ‚yc c}w )z;Test that `bounded_rand_int` follows a uniform distributioné*   r7   r   )ÚlocÚscaler   gš™™™™™©?z“Null hypothesis rejected: generated random numbers are not uniform. Details: the (meta) p-value of the test of uniform distribution of p-values is z which is not > 0.05r   )ÚqzlNull hypothesis rejected: generated random numbers are not uniform. Details: lower 10th quantile p-value of z not > 0.05.N)r   r   Úuniformr?   r   ÚkstestÚcdfÚappendÚpvaluer(   Ú
percentile)Úrange_Ún_ptsÚn_iterÚks_pvalsÚuniform_distr@   ÚsampleÚresÚuniform_p_vals_distÚ	res_pvalsÚmin_10pct_pvals              r   Útest_newrand_bounded_rand_intrb   \   s  € ô �"ÔØ€FØ€HÜ—=‘= Q¨fÔ5€Lä�6‹]ò $ˆä9>¸u»ÖF°AÔ'¨Õ/ÐFˆÐFÜ�l‰l˜6 <×#3Ñ#3Ó4ˆØ�‰˜Ÿ
™
Õ#ð	$ô  Ÿ-™-¨A°QÔ7ÐÜ—‘˜XÐ':×'>Ñ'>Ó?€IØ×Ñ˜dÒ"ð ð	à$×+Ñ+Ð,Ð,@ð	BóÐ"ô —]‘] 8¨rÔ2€Nð ˜DÒ ð ð	3Ø3AÐ2BÀ,ð	PóÑ ùò- Gs   ÁDrX   c                 óv   — t        j                  t        «      5  t        | «       ddd«       y# 1 sw Y   yxY w)zETest that `bounded_rand_int_wrap` is defined for unsigned 32bits intsN)r2   r3   rI   r   )rX   s    r   Ú$test_newrand_bounded_rand_int_limitsrd   …   s-   € ô 
�‰”}Ó	%ñ &Ü˜fÔ%÷&÷ &ñ &úrK   )Tg      ð?)Únumpyr(   r2   Úscipyr   Úsklearn.linear_modelr   Úsklearn.svmr   Úsklearn.svm._boundsr   Úsklearn.svm._newrandr   r   Úsklearn.utils.fixesr	   ÚmarkÚparametrizeÚarrayr   r   r5   Ú_MAX_UNSIGNED_INTrA   Úthread_unsaferG   rJ   rb   rd   r9   r   r   ú<module>rq      s�  ðÛ Û Ý å 3Ý !Ý (ß EÝ .ð ‡�×Ñ˜¨¸"¿(¹(¸Ñ(CÓDØ‡�×Ñ˜ /°5Ð!9Ó:Ø‡�×ÑÐ*¨^¸_Ð,MÓNñ	3ó Oó ;ó Eð	3óYò6ð Ð ò	9ð ‡�×ÑØ‡�×ÑÐ)¨GÐ6GÈÐ5KÐ+LÓMñ!ó Nó ð!ð ‡�×Ñ˜ "Ð&7¸!Ñ&;Ð!<Ó=ñó >ðð ‡�×ÑØ‡�×Ñ˜Ð,=¸uÐ+EÀyÐ*QÓRñ$ó Só ð$ðN ‡�×Ñ˜ BÐ(9¸AÑ(=Ð#>Ó?ñ&ó @ñ&r   