+
    �°³jÞ  ã                   óò  € ^ RI t ^ RIt^ RIHt ] P
                  ! ]P                  ]P                  .R7      R 4       t] P
                  R 4       t	] P                  P                  RR. RO. RO. RO^^	.^
^..3^.. RO. RO.3^^.. RO.3. RO. RO.3.4      R 4       tR tR tR	 tR
 t] P                  P                  R]P"                  ]P$                  .4      R 4       t] P
                  R 4       tR t] P                  P                  RR^.^^/3^^.^^^^/3R. RO^^^^^^/3.4      R 4       tR t] P                  P                  RR^.^^/3^^.^^^^/3R.4      R 4       tR tR tR tR tR# )é    N)Úconvert_node_labels_to_integers)Úparamsc                 ó   € V P                   # ©N)Úparam)Úrequests   &Úf/home/luca/screen-checking/.venv/lib/python3.14/site-packages/networkx/algorithms/tests/test_clique.pyÚfind_clique_fnr
      s   € à�=‰=Ðó    c                  ó^   € . ROp \        \        P                  P                  V 4      ^R7      # )é   )Úfirst_label)r   é   r   r   é   r   r   é   r   r   r   )ÚcnltiÚnxÚ
generatorsÚhavel_hakimi_graph)Úzs    r	   ÚGr      s#   € â)€AÜ”—‘×1Ñ1°!Ó4À!ÔDÐDr   c                 ó–   € \        V! W4      4      p\        \        \        V4      4      \        \        \        V4      4      8X  g   Q hR # r   )ÚlistÚsortedÚmap)r   r
   ÚnodesÚexpectedÚcls   &&&& r	   Útest_find_cliquesr      s8   € ô 
‰n˜QÓ&Ó	'€BÜ”#”f˜b“/Ó"¤f¬S´¸Ó-BÓ&CÔCÐCÒCr   c                 óÜ   € V P                  ^^4       \        V! V 4      4      p. RO. RO. RO^^	.^
^..p\        \        \        V4      4      \        \        \        V4      4      8X  g   Q hR# )r   N©r   é   r   r   ©r   r"   r   ©é   r   é   )Úadd_edger   r   r   )r   r
   r   r   s   &&  r	   Útest_selfloopsr(       s\   € Ø‡J�Jˆq�!ÔÜ	‰n˜QÓÓ	 €BÚšiª°Q¸°F¸RÀ¸HÐE€HÜ”#”f˜b“/Ó"¤f¬S´¸Ó-BÓ&CÔCÐCÒCr   c           	      óJ  € \         P                  ! \         P                  ! ^4      \        ^4       Uu/ uF  qV^,           bK  	  up4      pVP	                  . RO4       \        V ! V4      4      p^^.. RO^^.. RO.p\        \        \        V4      4      V8X  g   Q hR# u upi )r"   N))r   r"   )r   r%   ©r   r   )r   r   )r%   r   )r   r   r%   r"   )r   r   r"   )r   Úrelabel_nodesÚcomplete_graphÚrangeÚremove_edges_fromr   r   r   )r
   ÚiÚHÚhclr   s   &    r	   Útest_find_cliques2r2   '   sŒ   € Ü
×Òœ×*Ò*¨1Ó-Ä%ÈÄ(Ó/KÁ(¸Q°1°qµ5²Á(Ñ/KÓL€AØ×ÑÒ@ÔAÜ
‰~˜aÓ Ó
!€CØ�A�š q¨! fªiÐ8€HÜ”#”f˜cÓ"Ó# xÔ/Ð/Ò/ùò	 0Ls   ³B 
c                 ó\   € \        V ! \        P                  ! 4       4      4      . 8X  g   Q hR # r   )r   r   Ú
null_graph)r
   s   &r	   Útest_find_cliques_nullr5   /   s    € Ü‘œrŸ}š}›Ó/Ó0°BÔ6Ð6Ò6r   c           	      ó°   € \         P                  ! \        R R7      ;_uu_ 4        \        V! V . RO4      4       RRR4       R#   + '       g   i     R# ; i)zdo not form a clique©ÚmatchN)r   r"   r   r   )ÚpytestÚraisesÚ
ValueErrorr   )r   r
   s   &&r	   Útest_find_cliques_not_cliquer<   3   s3   € Ü	�Š”zÐ)?×	@Ö	@Ü‰^˜Aš|Ó,Ô-÷ 
A×	@×	@Ò	@ús   ¥AÁA	Ú
graph_typec                 óò   € \         P                  ! ^VR7      pRp\        P                  ! \         P                  VR7      ;_uu_ 4        \        V ! V4      4       RRR4       R#   + '       g   i     R# ; i)r   ©Úcreate_usingznot implemented for directedr7   N)r   Ú
path_graphr9   r:   ÚNetworkXNotImplementedr   )r
   r=   ÚDGÚmsgs   &&  r	   Útest_find_cliques_directedrE   8   sJ   € ä	�Š�q zÔ	2€BØ
(€CÜ	�Š”r×0Ñ0¸×	<Ö	<Ü‰^˜BÓÔ ÷ 
=×	<×	<Ò	<ús   Á	A%Á%A6	c                 ó@   € \        \        P                  ! V 4      4      # r   )r   r   Úfind_cliques)r   s   &r	   r   r   @   s   € ä”—’ Ó"Ó#Ð#r   c                 óN  € ^^^^^^^^^^^^^^^^^	^^
^^^/p\         P                  ! V 4      V8X  g   Q h\         P                  ! V \        V 4      R7      V8X  g   Q h\         P                  ! WR7      V8X  g   Q h\         P                  ! V \        V 4      VR7      V8X  g   Q hR# ©r   ©r   )Úcliques©r   rK   N)r   Únumber_of_cliquesr   ©r   r   r   s   && r	   Ú#test_number_of_cliques_default_argsrO   E   s´   € à	ˆ1Ø	ˆ1Ø	ˆ1Ø	ˆ1Ø	ˆ1Ø	ˆ1Ø	ˆ1Ø	ˆ1Ø	ˆ1Ø
ˆAØ
ˆAð€Hô ×Ò Ó" hÔ.Ð.Ð.Ü×Ò ¬¨a«Ô1°XÔ=Ð=Ð=Ü×Ò Ô.°(Ô:Ð:Ð:Ü×Ò ¬¨a«¸"Ô=ÀÔIÐIÒIr   c                 ó€   € \         P                  ! WR 7      V8X  g   Q h\         P                  ! WVR7      V8X  g   Q hR# ©rJ   rL   N)r   rM   ©r   r   r   r   s   &&&&r	   Útest_number_of_cliques_nodesrS   Y   s8   € ô ×Ò Ô/°8Ô;Ð;Ð;Ü×Ò ¸Ô;¸xÔGÐGÒGr   c                 óN  € ^^^^^^^^^^^^^^^^^	^^
^^^/p\         P                  ! V 4      V8X  g   Q h\         P                  ! V \        V 4      R7      V8X  g   Q h\         P                  ! WR7      V8X  g   Q h\         P                  ! V \        V 4      VR7      V8X  g   Q hR# rI   )r   Únode_clique_numberr   rN   s   && r	   Ú$test_node_clique_number_default_argsrV   k   s´   € à	ˆ1Ø	ˆ1Ø	ˆ1Ø	ˆ1Ø	ˆ1Ø	ˆ1Ø	ˆ1Ø	ˆ1Ø	ˆ1Ø
ˆAØ
ˆAð€Hô × Ò  Ó# xÔ/Ð/Ð/Ü× Ò  ¬$¨q«'Ô2°hÔ>Ð>Ð>Ü× Ò  Ô/°8Ô;Ð;Ð;Ü× Ò  ¬$¨q«'¸2Ô>À(ÔJÐJÒJr   c                 ó€   € \         P                  ! WR 7      V8X  g   Q h\         P                  ! WVR7      V8X  g   Q hR# rQ   )r   rU   rR   s   &&&&r	   Útest_node_clique_number_nodesrX      s8   € ô × Ò  Ô0°HÔ<Ð<Ð<Ü× Ò  ¸Ô<ÀÔHÐHÒHr   c                 ó®  € \         P                  ! V 4      p\        V4      . RO8X  g   Q h\         P                  ! V\	        ^^4      4      pVP
                  V P
                  8X  g   Q h\         P                  ! V\	        R^ 4      4      p\         P                  ! T\	        ^^4       Uu/ uF  qD) VbK  	  up4      p\        V4      . RO8X  g   Q hR# u upi )r%   Néûÿÿÿ)rZ   éüÿÿÿéýÿÿÿéþÿÿÿéÿÿÿÿr   r   r   r   r%   r"   r&   é   é	   é
   é   )r   r   r   r   r%   )r   Úmake_clique_bipartiter   Úprojected_graphr-   Úadjr+   )r   ÚBr0   ÚH1Úvs   &    r	   Útest_make_clique_bipartiteri   ‡   s«   € Ü
× Ò  Ó#€AÜ�!‹9ÒOÔOÐOÐOä
×Ò˜1œe A r›lÓ+€AØ�5‰5�A—E‘EŒ>Ðˆ>ä	×	Ò	˜Aœu R¨›|Ó	,€Bä	×	Ò	˜"¬e°A°q¬kÓ:©k¨˜r 1šu©kÑ:Ó	;€BÜ�"‹:šÔ(Ð(Ò(ùò ;s   Â)C
c           	     óV  € \         P                  ! V 4      p\         P                  ! V\        R^ 4      4      p\         P                  ! T\        ^^4       Uu/ uF  q3) V^,
          bK  	  up4      p\         P
                  ! V 4      pVP                  VP                  8X  g   Q hR# u upi )zŽTests that the maximal clique graph is the same as the bipartite
clique graph after being projected onto the nodes representing the
cliques.

NrZ   )r   rc   rd   r-   r+   Úmake_max_clique_graphre   )r   rf   rg   rh   ÚH2s   &    r	   Útest_make_max_clique_graphrm   ”   sˆ   € ô 	× Ò  Ó#€Aä	×	Ò	˜Aœu R¨›|Ó	,€Bô 
×	Ò	˜"´%¸¸1´+Ó>±+¨Q˜r 1 q¥5šy±+Ñ>Ó	?€BÜ	×	!Ò	! !Ó	$€BØ�6‰6�R—V‘VÔÐÒùò ?s   ÁB&
c                  ó  € \         P                  ! . RO4      p \         P                  ! . RO4      pVP                  ^4       \         P                  ! \         P                  ! V \         P                  R7      V4      '       g   Q hR# )r   r?   N)©r   r   )r   r   )r   r   )r%   r"   ))r   r   )r   r   ro   )r   ÚGraphÚadd_nodeÚis_isomorphicrk   )r   ÚEs     r	   Ú'test_make_max_clique_graph_create_usingrt   ¤   sV   € Ü
�ŠÒ1Ó2€AÜ
�ŠÒ)Ó*€AØ‡J�Jˆq„MÜ×ÒœB×4Ò4°QÄRÇXÁXÔNÐPQ×RÒRÐRÒRr   c                  óº  € \         P                  ! 4       p . ROpV P                  V4       \        \         P                  ! V 4      4      p\        \        \        V4      4      p\        V4      V8X  g   Q h. R .NR.NR.NR.NR.NR.NR.NR R.N. R	ON. R
ON. RONR R.N. RON. RON. RONR R.N. RONR R.NRR.N. RON. RON. RON. RONRR.N. RONRR.NRR.NRR.N. RON. RON. RONRR.N. RONRR.N. RONRR.NRR.N. RONRR.NRR.NRR.N. RON. RON. RON. RONp\        \        \        V4      4      \        \        \        V4      4      8X  g   Q hR# )ÚaÚbÚcÚdÚeÚfÚgN))rv   rw   )rv   rx   )rv   ry   )rv   rz   )rw   rx   )rw   ry   )rw   rz   )rx   ry   )rx   rz   )ry   rz   )r{   rw   )r{   rx   )r{   r|   )r|   r{   )r|   rx   )r|   ry   )r|   rz   )rv   rw   ry   )rv   rw   ry   rz   )rv   rw   rz   )rv   rx   ry   )rv   rx   ry   rz   )rv   rx   rz   )rv   ry   rz   )rw   rx   ry   )rw   rx   ry   rz   )rw   rx   rz   )rw   rx   r{   )rw   ry   rz   )rx   ry   rz   )rx   ry   rz   r|   )rx   ry   r|   )rx   rz   r|   )rx   r{   r|   )ry   rz   r|   )rv   rw   rx   )rv   rw   rx   ry   )rv   rw   rx   ry   rz   )rv   rw   rx   rz   )r   rp   Úadd_edges_fromr   Úenumerate_all_cliquesr   Úlenr   )r   Úedges_fig_4rK   Úclique_sizesÚexpected_cliquess        r	   Útest_enumerate_all_cliquesrƒ   «   s¹  € ô 	�Š‹
€Aò€Kð& ×Ñ�[Ô!ä”2×+Ò+¨AÓ.Ó/€GÜœœC Ó)Ó*€LÜ�,Ó <Ô/Ð/Ð/ð.Ø	ˆð.à	ˆð.ð 
ˆð.ð 
ˆð	.ð
 
ˆð.ð 
ˆð.ð 
ˆð.ð 
ˆcˆ
ð.ò 	ð.ò 	ð.ò 	ð.ð 
ˆcˆ
ð.ò 	ð.ò 	ð.ò 	ð.ð  
ˆcˆ
ð!.ò" 	ð#.ð$ 
ˆcˆ
ð%.ð& 
ˆcˆ
ð'.ò( 	ð).ò* 	ð+.ò, 	ð-.ò. 	ð/.ð0 
ˆcˆ
ð1.ò2 	ð3.ð4 
ˆcˆ
ð5.ð6 
ˆcˆ
ð7.ð8 
ˆcˆ
ð9.ò: 	ð;.ò< 	ð=.ò> 	ð?.ð@ 
ˆcˆ
ðA.òB 	ðC.ðD 
ˆcˆ
ðE.òF 	ðG.ðH 
ˆcˆ
ðI.ðJ 
ˆcˆ
ðK.òL 	ðM.ðN 
ˆcˆ
ðO.ðP 
ˆcˆ
ðQ.ðR 
ˆcˆ
ðS.òT 	ðU.òV 	ðW.òX 	"ðY.òZ 	ð[.Ðô` ”#”f˜gÓ&Ó'¬6´#´fÐ>NÓ2OÓ+PÔPÐPÒPr   )r   r   r!   r#   r$   )r   r   )r   r   )r   r   r   )r   r   r*   )r9   Únetworkxr   r   r   ÚfixturerG   Úfind_cliques_recursiver
   r   ÚmarkÚparametrizer   r(   r2   r5   r<   ÚDiGraphÚMultiDiGraphrE   r   rO   rS   rV   rX   ri   rm   rt   rƒ   © r   r	   Ú<module>rŒ      s  ðÛ ã Ý =ð ‡‚˜Ÿ™¨×)BÑ)BÐCÔDñó Eðð ‡�ñEó ðEð
 ‡�×ÑØà	’šiª°Q¸°F¸RÀ¸HÐEÐFØ
ˆŠ|šYÐ'Ð(Ø
ˆQˆ’,�Ð Ú	’Y�KÐ ð	óñDóðDò
Dò0ò7ò.ð
 ‡�×Ñ˜¨¯
©
°B·O±OÐ'DÓEñ!ó Fð!ð ‡�ñ$ó ð$òJð( ‡�×ÑØàØ
ˆˆq�!ˆfˆØ
ˆQˆ�!�Q˜˜1�ÐØâØ��1�a˜˜AÐð	
ð	óñHóðHò
Kð( ‡�×ÑØ˜F a S¨1¨a¨& M°Q¸°F¸QÀÀ1Àa¸LÐ3IÈ6ÐRóñIóðIò

)òò SôNQr   