o
    jgY
                     @   s,   d dl mZ d dlmZ dd Zdd ZdS )    Prufer)raisesc                  C   s  t ddgddgddgddggdjdksJ t ddgddgddgddggjdks+J t ddgddgddgddgg} | jdksBJ | jdksIJ | jg dksRJ t ddgddgddgddgddgg} | jdkslJ | jd	kssJ | jddgddgddgddgddggksJ | jg d
ksJ t g dg dg dddgddgddgddgddgdd	ggdfksJ t dgd jt d	gd j  krdksJ  J g d}dd |D }t |j|ksJ tt t|jt|ksJ t	t
dd  t	t
dd  t t ddgddg jddgksJ t	t
dd  t	t
dd  t	t
dd  t ddgddgddgg} |  }|jddgddgddggksMJ |jdksUJ d S )Nr                  )r   r   r   i     )r   r   r   r   )r   r   r   r   )r   r   r	   )r   r   r
      i  ))r   r   )r   r	   )r   r   )r   r   )r   r
   )r   r   )r   r   c                 S   s   g | ]}t |qS  )list).0tr   r   ]/var/www/html/zoom/venv/lib/python3.10/site-packages/sympy/combinatorics/tests/test_prufer.py
<listcomp>       ztest_prufer.<locals>.<listcomp>c                   S   s   t ddgddggS )Nr   r   r   r   r   r   r   r   r   <lambda>   r   ztest_prufer.<locals>.<lambda>c                   S   s   t ddgddggS )Nr   r   r   r   r   r   r   r   r       r   c                   S   s   t ddgddgS )Nr   r   r   r   edgesr   r   r   r   r   "   s    c                   S   s   t ddgddgS )Nr   r   r	   r
   r   r   r   r   r   r   $   r   c                   S   s
   t g gS )Nr   r   r   r   r   r   %   s   
 )r   nodesrankprufer_repr	tree_reprr   sizesortedsetr   
ValueErrornext)atree
tree_listsbr   r   r   test_prufer   s:   ,* &,*4("r#   c                  C   s  dd } | ddggg  | g dgdg | g dgdg | g dgdg | g d	ddggddg | g d
gddg | g dddggddg | g dgddg | g dgddg | g dgddg | g dgddg | g dgddg | g dgddg | g dddggddg | g dgddg | g dddggddg | g dgddg | g dgddg | g dgddg | g dg dddggg d d S )Nc                 S   sp   t j|  \}}t ||} t| j}dd |D }| j|ksJ tt |j|ks*J t | j|j|ks6J d S )Nc                 S   s   g | ]}|d  qS )r   r   )r   ir   r   r   r   2   r   z1test_round_trip.<locals>.doit.<locals>.<listcomp>)r   r   r   r   r   unrankr   )r   r"   enr   r   r   r   doit.   s   

ztest_round_trip.<locals>.doitr   r   )r   r   r   )r   r   r   r   )r   r   r   )r   r   r   )r   r   r   r   )r   r   r   r   )r   r   r   r   )r   r   r   r   )r   r   r   r   )r   r   r   r   )r   r   r   r   )r   r   r   r   )r   r   r   )r   r   r   r   )r   r   r   )r   r   r   r   )r   r   r   r   )r   r   r   r   )r
   r   r   r   )r   r   r	      r   )r   r   r   r   r   r	   r   )r(   r   r   r   test_round_trip-   s*   	$r*   N)sympy.combinatorics.pruferr   sympy.testing.pytestr   r#   r*   r   r   r   r   <module>   s    (