
    hI                         S r SSKrSSKrSSKrS r\R                  R                  S\R                  " S5      \R                  " S5      /5      S 5       r	S r
S	 rS
 rS rg)z4
Tests for maximal (not maximum) independent sets.

    Nc                  j    [         R                  " S5      n [         R                  " U SS9/ SQ:X  d   eg )N      )seed)r   r            )nxempty_graphmaximal_independent_setGs    T/var/www/html/env/lib/python3.13/site-packages/networkx/algorithms/tests/test_mis.pytest_random_seedr      s+    
qA%%aa0OCCC    graphr   7   c                 >   ^  [        U 4S jT  5       5      (       d   eg)z+Maximal independent set for complete graphsc              3   \   >#    U  H!  n[         R                  " TU/5      U/:H  v   M#     g 7fN)r
   r   ).0nr   s     r   	<genexpr>test_K5.<locals>.<genexpr>   s'     Ler))%!5!<es   ),N)all)r   s   `r   test_K5r      s     LeLLLLLr   c                     [         R                  " 5       n [        R                  " [         R                  [         R
                  U S/5        [        R                  " [         R                  [         R
                  U SS/5        [        R                  " [         R                  [         R
                  [         R                  " U 5      5        g)z!Bad input should raise exception.SmithSalviatiPazziN)r
   florentine_families_graphpytestraisesNetworkXUnfeasibler   NetworkXNotImplementedDiGraphr   s    r   test_exceptionsr'      s}    
$$&A
MM"'')C)CQ	R
MM
r991z7>S MM"++R-G-GTUWr   c                      [         R                  " 5       n [         R                  " U SS/5      n[        U5      1 Sk:X  d   eg )NMediciBischeri>   r    Ginorir)   r*   
CastellaniLamberteschi)r
   r!   r   setr   indeps     r   test_florentine_familyr1   #   sB    
$$&A&&q8Z*@AEu:    r   c                      [         R                  " SS5      n [         R                  " U / SQ5      n[        U5      [	        [        S5      5      :X  d   eg )N   "   )r	   r   	   
   )r
   complete_bipartite_graphr   sortedlistranger/   s     r   test_bipartiter;   0   s@    
##B+A&&q-8E%=DrO+++r   c                    ^^ [        SSS5       H  n [        R                  " U S-  S-   [        R                  " 5       5      m[        R                  " T5      nTR                  U5      R                  5       S:X  d   e[        R                  " U4S jU 5       6 m[        U4S j[        TR                  5       5      R                  U5       5       5      (       a  M   e   g)znGenerate 5 random graphs of different types and sizes and
make sure that all sets are independent and maximal.r   2   r6   r   c              3   X   >#    U  H  n[        TR                  U5      5      v   M!     g 7fr   )r.   	neighbors)r   vr   s     r   r   %test_random_graphs.<locals>.<genexpr>=   s!     !Br!#akk!n"5"5rs   '*c              3   ,   >#    U  H	  oT;   v   M     g 7fr    )r   r@   nbrs_of_MISs     r   r   rA   >   s     K-J#-Js   N)r:   r
   erdos_renyi_graphrandomr   subgraphnumber_of_edgesr.   unionr   nodes
difference)iISr   rD   s     @@r   test_random_graphsrN   6   s     1b"  R!V]]_=''*zz"~--/1444ii!Br!BCKS^-F-Fr-JKKKKK r   )__doc__rF   r"   networkxr
   r   markparametrizecomplete_graphr   r'   r1   r;   rN   rC   r   r   <module>rT      st   
   D
 2#4#4Q#79J9J29N"OPM QM
X
,Lr   