o
    GZŽhBÞ  ã                   @   s€  d dl mZ d dlmZmZ d dlmZmZmZm	Z	m
Z
mZmZmZ d dlmZ d dlmZmZ d dlmZmZ d dlmZmZ d dlmZmZmZmZmZmZm Z m!Z!m"Z"m#Z#m$Z$m%Z% d d	l&m'Z' d d
l(m)Z)m*Z*m+Z+m,Z,m-Z-m.Z.m/Z/ d dl0m1Z1 d dl2m3Z3 d dlm4Z4m5Z5 d dl6m7Z7 dd„ Z8dd„ Z9dd„ Z:dd„ Z;dd„ Z<dd„ Z=dd„ Z>dd„ Z?dd „ Z@d!d"„ ZAd#d$„ ZBd%d&„ ZCd'd(„ ZDd)d*„ ZEd+d,„ ZFd-d.„ ZGd/d0„ ZHd1d2„ ZId3d4„ ZJd5d6„ ZKd7d8„ ZLd9d:„ ZMd;d<„ ZNd=d>„ ZOd?d@„ ZPdAdB„ ZQdCdD„ ZRdEdF„ ZSdGdH„ ZTdIdJ„ ZUdKdL„ ZVdMdN„ ZWdOdP„ ZXdQdR„ ZYdSdT„ ZZdUdV„ Z[dWdX„ Z\dYdZ„ Z]d[d\„ Z^d]d^„ Z_d_d`„ Z`dadb„ Zadcdd„ Zbdedf„ Zcdgdh„ Zddidj„ Zedkdl„ Zfdmdn„ Zgdodp„ Zhdqdr„ Zidsdt„ Zjdudv„ Zkdwdx„ Zldydz„ Zmd{d|„ Znd}d~„ Zodd€„ Zpdd‚„ Zqdƒd„„ Zrd…d†„ Zsd‡dˆ„ Ztd‰dŠ„ Zud‹dŒ„ ZvddŽ„ Zwdd„ Zxd‘d’„ Zyd“d”„ Zzd•d–„ Z{d—d˜„ Z|d™dš„ Z}d›dœ„ Z~ddž„ ZdŸd „ Z€d¡d¢„ Zd£d¤„ Z‚d¥d¦„ Zƒd§S )¨é    )ÚAccumBounds)Ú
expand_mulÚexpand_trig)ÚEÚIÚIntegerÚRationalÚnanÚooÚpiÚzoo)ÚS)ÚSymbolÚsymbols)ÚimÚre)ÚexpÚlog)ÚacoshÚacothÚacschÚasechÚasinhÚatanhÚcoshÚcothÚcschÚsechÚsinhÚtanh)Úsqrt)ÚacosÚasinÚcosÚcotÚsecÚsinÚtan)ÚO)Ú	unchanged)ÚArgumentIndexErrorÚ	PoleError)Úraisesc                  C   sÜ  t dƒ\} }tddd}ttƒtu sJ ‚ttƒtu sJ ‚ttƒtu s$J ‚tt ƒt u s.J ‚tdƒdks6J ‚ttdƒs=J ‚tdƒtdƒ ksHJ ‚tt| ƒsOJ ‚t|  ƒt| ƒ ks[J ‚tttƒsbJ ‚tt ƒttƒ ksnJ ‚ttdd	 t ƒsyJ ‚tdd	  t ƒtdd	 t ƒ ksJ ‚ttt	 ƒdks—J ‚tt t	 ƒdks¢J ‚tdt t	 ƒdks®J ‚td
t t	 ƒdksºJ ‚tddd  t t	 ƒdksÊJ ‚tddd  t t	 ƒdksÚJ ‚ttt	 d ƒt	ksæJ ‚tt t	 d ƒt	 ksôJ ‚ttt	 t
ddƒ ƒt	ksJ ‚ttt	 t
ddƒ ƒt	 ksJ ‚ttt	 d ƒtjtdƒ t	 ks)J ‚ttt	 t
d
dƒ ƒt
ddƒtdƒ t	 ksBJ ‚ttt	 d ƒtjtdƒ t	 ksVJ ‚tt t	 d ƒt
ddƒtdƒ t	 ksmJ ‚ttt	 t
ddƒ ƒtjtdƒ t	 ks„J ‚ttt	 t
ddƒ ƒt
ddƒtdƒ t	 ksJ ‚ttt	 d ƒtjt	 ks­J ‚tt t	 d ƒt
ddƒt	 ksÀJ ‚ttt	 t
ddƒ ƒt
ddƒt	 ksÕJ ‚ttt	 t
ddƒ ƒt
ddƒt	 ksêJ ‚ttt	 d ƒttd ƒt	 ksýJ ‚tt t	 d ƒttd ƒ t	 ksJ ‚ttddt	  ƒsJ ‚t| t	 ƒt| ƒt	 ks-J ‚t|t t	 ƒdks:J ‚td| t t	 ƒdksIJ ‚t|t t	 d ƒt|t d ƒt	 ks`J ‚t| ƒjddtt| ƒƒtt| ƒƒ tt| ƒƒtt| ƒƒ fksƒJ ‚tddd} t| ƒjddt| ƒdfksšJ ‚tddd} tt	|  ƒjdu s¬J ‚t| ƒjdu s¶J ‚tt	ƒjdu sÀJ ‚tddd}t|ƒjdu sÐJ ‚tdddjdu sÜJ ‚tdt t	 ddjdu sìJ ‚d S )Núx,yÚkT©Úintegerr   é   éÿÿÿÿé   é   éþÿÿÿéýÿÿÿé
   éI   é   ég   é   é   é   é   é   éûÿÿÿéi   F©ÚdeepÚx©Zextended_real©ÚrealÚp©Zpositive©Úevaluate)r   r   r   r	   r   r
   r)   r   r   r   r   r   ÚHalfr    r&   Úas_real_imagr#   r   r   r   Ú	is_finiteÚis_realÚis_zero)rD   Úyr.   rH   © rR   ú_/var/www/auris/lib/python3.10/site-packages/sympy/functions/elementary/tests/test_hyperbolic.pyÚ	test_sinh   sn   (   "(2(..2 &**&*.$ÿ"$rT   c                  C   sb   t dƒ} t| ƒ | dd¡| | d d  | d d  | d d	  | d
 d  t| d ƒ ks/J ‚d S )NrD   r   r7   r<   r?   r;   éx   r9   i°  é	   i€‰ )r   r   Úseriesr(   ©rD   rR   rR   rS   Útest_sinh_series_   ó   >ÿrY   c                      ó   t dƒ‰ tt‡ fdd„ƒ d S )NrD   c                      ó   t ˆ ƒ d¡S ©Nr3   )r   ÚfdiffrR   rX   rR   rS   Ú<lambda>g   ó    z!test_sinh_fdiff.<locals>.<lambda>©r   r,   r*   rR   rR   rX   rS   Útest_sinh_fdiffe   ó   rb   c                  C   sj  t dƒ\} }tddd}ttƒtu sJ ‚ttƒtu sJ ‚ttƒtu s$J ‚tt ƒtu s-J ‚tdƒdks5J ‚ttdƒs<J ‚tdƒtdƒksFJ ‚tt| ƒsMJ ‚t|  ƒt| ƒksXJ ‚ttt ƒt	tƒksdJ ‚tt t ƒt	tƒksqJ ‚ttdd	 t
 ƒs|J ‚tdd	  t
 ƒtdd	 t
 ƒksJ ‚ttt d ƒdks›J ‚tt t d ƒdks¨J ‚td
dd  d t t d ƒdks¼J ‚tddd  d t t d ƒdksÐJ ‚ttt ƒdksÚJ ‚tt t ƒdksåJ ‚tdt t ƒdksñJ ‚tdt t ƒdksýJ ‚ttt d ƒtjksJ ‚ttt tddƒ ƒtddƒksJ ‚ttt d ƒtjtdƒ ks0J ‚tt t d ƒtjtdƒ ksCJ ‚ttt tddƒ ƒtddƒtdƒ ksZJ ‚ttt td
dƒ ƒtddƒtdƒ ksqJ ‚ttt d ƒtjtdƒ ksƒJ ‚tt t d ƒtjtdƒ ks–J ‚ttt tddƒ ƒtddƒtdƒ ks­J ‚ttt tddƒ ƒtddƒtdƒ ksÄJ ‚ttt d ƒt	td ƒksÕJ ‚tt t d ƒt	td ƒksçJ ‚ttddt  ƒsóJ ‚t| t ƒt	| ƒks J ‚t|t t ƒt	|t ƒksJ ‚td| t t ƒt	d| t ƒks&J ‚tt|t ƒs0J ‚t| ƒjddt	t| ƒƒtt| ƒƒ tt| ƒƒtt| ƒƒ fksSJ ‚tddd} t| ƒjddt| ƒdfksjJ ‚tddd} tt|  ƒjdu s|J ‚tt|  ƒjdu sˆJ ‚ttd d ƒjdu s–J ‚tdt tj d ddjdu s©J ‚t| ƒjdu s³J ‚d S )Nr-   r.   Tr/   r   r1   r2   r3   r4   r6   r7   r8   r9   r:   r;   é   r<   r5   r=   é   r?   r@   rA   r>   FrB   rD   rE   rF   rJ   )r   r   r   r	   r   r
   r)   r   r   r#   r   r   rL   r   r    rM   r   r   r&   r   rN   rO   ÚPirP   ©rD   rQ   r.   rR   rR   rS   Ú	test_coshj   sf   &((&$&..$&.."$"*$ÿ"&rh   c                  C   sb   t dƒ} t| ƒ | dd¡d| d d  | d d  | d d	  | d
 d  t| d ƒ ks/J ‚d S )NrD   r   r7   r1   r3   r=   é   r?   éÐ  rd   i€  )r   r   rW   r(   rX   rR   rR   rS   Útest_cosh_series³   rZ   rk   c                      r[   )NrD   c                      r\   r]   )r   r^   rR   rX   rR   rS   r_   »   r`   z!test_cosh_fdiff.<locals>.<lambda>ra   rR   rR   rX   rS   Útest_cosh_fdiff¹   rc   rl   c                  C   sv  t dƒ\} }tddd}ttƒtu sJ ‚ttƒtu sJ ‚ttƒdks$J ‚tt ƒdks-J ‚tdƒdks5J ‚ttdƒs<J ‚tdƒtdƒ ksGJ ‚tt| ƒsNJ ‚t|  ƒt| ƒ ksZJ ‚tttƒsaJ ‚tt ƒttƒ ksmJ ‚ttdd	 t ƒsxJ ‚tdd	  t ƒtdd	 t ƒ ksŒJ ‚ttt	 ƒdks–J ‚tt t	 ƒdks¡J ‚tdt t	 ƒdks­J ‚td
t t	 ƒdks¹J ‚tddd  t t	 ƒdksÉJ ‚tddd  t t	 ƒdksÙJ ‚ttt	 d ƒtu såJ ‚tt t	 d ƒtu sòJ ‚ttt	 t
ddƒ ƒtu sJ ‚ttt	 t
ddƒ ƒtu sJ ‚ttt	 d ƒtdƒt	 ks#J ‚ttt	 t
d
dƒ ƒtdƒt	 ks7J ‚ttt	 d ƒt	ksDJ ‚tt t	 d ƒt	 ksSJ ‚ttt	 t
ddƒ ƒt	kscJ ‚ttt	 t
ddƒ ƒt	kssJ ‚ttt	 d ƒt	tdƒ ks„J ‚tt t	 d ƒt	 tdƒ ks—J ‚ttt	 t
ddƒ ƒt	tdƒ ks«J ‚ttt	 t
ddƒ ƒt	tdƒ ks¿J ‚ttt	 d ƒttd ƒt	 ksÒJ ‚tt t	 d ƒttd ƒ t	 ksçJ ‚ttddt	  ƒsóJ ‚t| t	 ƒt| ƒt	 ksJ ‚t|t t	 ƒdksJ ‚td| t t	 ƒdksJ ‚t|t t	 d ƒt|t d ƒt	 ks5J ‚t| ƒjddtt| ƒƒtt| ƒƒ tt| ƒƒd tt| ƒƒd   tt| ƒƒtt| ƒƒ tt| ƒƒd tt| ƒƒd   fksxJ ‚tddd} t| ƒjddt| ƒdfksJ ‚tt	t d d ƒjdu sŸJ ‚t| ƒjdu s©J ‚tt	t |  d ƒjd u s¹J ‚d S )Nr-   r.   Tr/   r1   r2   r   r3   r4   r5   r6   r7   r8   r9   r:   r;   r<   r=   r>   r?   r@   rA   FrB   rD   rE   )r   r   r   r	   r   r
   r)   r   r   r   r   r    r'   rM   r   r   r   r#   r   r&   rO   rg   rR   rR   rS   Ú	test_tanh¾   sh   (    "(  "&((&*.2ÿ6þ" $rm   c                  C   sn   t dƒ} t| ƒ | dd¡| | d d  d| d  d  d| d	  d
  d| d  d  t| d ƒ ks5J ‚d S )NrD   r   r7   r<   r3   r;   é   r>   r9   i;  é>   rV   i  )r   r   rW   r(   rX   rR   rR   rS   Útest_tanh_series  ó   Jÿrp   c                      r[   )NrD   c                      r\   r]   )r   r^   rR   rX   rR   rS   r_     r`   z!test_tanh_fdiff.<locals>.<lambda>ra   rR   rR   rX   rS   Útest_tanh_fdiff  rc   rr   c                  C   s¶  t dƒ\} }tddd}ttƒtu sJ ‚ttƒtu sJ ‚ttƒdks$J ‚tt ƒdks-J ‚tdƒtu s5J ‚ttdƒs<J ‚tdƒtdƒ ksGJ ‚tt| ƒsNJ ‚t|  ƒt| ƒ ksZJ ‚ttt ƒt t	tƒ ksiJ ‚tt t ƒt	tƒt ksxJ ‚ttdd	 t
 ƒsƒJ ‚tdd	  t
 ƒtdd	 t
 ƒ ks—J ‚ttt ƒt t	tƒ ks¦J ‚tt t ƒtt	tƒ ksµJ ‚tdt t ƒt t	dt ƒ ksÈJ ‚td
t t ƒtt	dt ƒ ksÚJ ‚tddd  t t ƒtt	ddd  t ƒ ksôJ ‚tddd  t t ƒt t	ddd  t ƒ ksJ ‚ttt d ƒdksJ ‚tt t d ƒdks+J ‚ttt tddƒ ƒdks;J ‚ttt tddƒ ƒdksKJ ‚ttt d ƒt tdƒ ks]J ‚ttt td
dƒ ƒt tdƒ ksrJ ‚ttt d ƒt ks€J ‚tt t d ƒtksŽJ ‚ttt tddƒ ƒt ksŸJ ‚ttt tddƒ ƒt ks°J ‚ttt d ƒtdƒ t ksÂJ ‚tt t d ƒtdƒt ksÔJ ‚ttt tddƒ ƒtdƒ t kséJ ‚ttt tddƒ ƒtdƒ t ksþJ ‚ttt d ƒt	td ƒ t ksJ ‚tt t d ƒt	td ƒt ks&J ‚ttddt  ƒs2J ‚t| t ƒt	| ƒ t ksBJ ‚t|t t ƒt	|t ƒ t ksVJ ‚td| t t ƒt	d| t ƒ t ksnJ ‚t|t t ƒt	|t ƒ t ks‚J ‚tttdƒƒƒtttdƒ ƒƒks–J ‚tdtt d  ƒtdƒks§J ‚t| ƒjddtt| ƒƒtt| ƒƒ tt| ƒƒd tt| ƒƒd   tt| ƒƒ tt| ƒƒ tt| ƒƒd tt| ƒƒd   fksëJ ‚tddd} t| ƒjddt| ƒdfksJ ‚ttd|  ƒƒt| ƒd d dt| ƒ  ksJ ‚ttd|  ƒƒt| ƒd dt| ƒ  ddt| ƒd    ks<J ‚tt| | ƒƒdt| ƒt|ƒ  t| ƒt|ƒ  ksYJ ‚d S )Nr-   r.   Tr/   r1   r2   r   r3   r4   r5   r6   r7   r8   r<   r9   r:   r;   r=   r>   r?   r@   rA   FrB   rD   rE   )r   r   r   r	   r   r
   r)   r   r   r$   r   r   r    r   r'   r   rM   r   r   r   r&   r   r#   r   rg   rR   rR   rS   Ú	test_coth  sl   (&$48  $*""$$**(( (0(("2ÿ8þ"2B>rs   c                  C   sf   t dƒ} t| ƒ | dd¡d|  | d  | d d  d| d  d	  | d
 d  t| d ƒ ks1J ‚d S )NrD   r   rd   r1   r<   é-   r3   r;   i±  r9   iu  )r   r   rW   r(   rX   rR   rR   rS   Útest_coth_series]  s   Bÿru   c                      r[   )NrD   c                      r\   r]   )r   r^   rR   rX   rR   rS   r_   e  r`   z!test_coth_fdiff.<locals>.<lambda>ra   rR   rR   rX   rS   Útest_coth_fdiffc  rc   rv   c                  C   s¸  t dƒ\} }tddd}tddd}ttƒtu sJ ‚ttƒtu s"J ‚ttƒdks*J ‚tt ƒdks3J ‚tdƒtu s;J ‚tdƒtd	ƒ ksFJ ‚t|  ƒt| ƒ ksRJ ‚tt ƒttƒ ks^J ‚td
d  t ƒtd
d t ƒ ksrJ ‚ttt ƒtu s|J ‚tt t ƒtu s‡J ‚td
t t ƒtu s“J ‚tdt t ƒtu sŸJ ‚tddd  t t ƒtu s¯J ‚tddd  t t ƒtu s¿J ‚ttt d
 ƒt ksÌJ ‚tt t d
 ƒtksÙJ ‚ttt t	dd
ƒ ƒt kséJ ‚ttt t	dd
ƒ ƒtksøJ ‚ttt d ƒdt
dƒ t ksJ ‚ttt t	ddƒ ƒd
t
dƒ t ks!J ‚ttt d ƒt
d
ƒ t ks3J ‚tt t d ƒt
d
ƒt ksEJ ‚ttt t	ddƒ ƒt
d
ƒt ksYJ ‚ttt t	ddƒ ƒt
d
ƒt ksmJ ‚ttt d ƒdt ks|J ‚tt t d ƒd
t ksŒJ ‚ttt t	ddƒ ƒd
t ksžJ ‚ttt t	ddƒ ƒdt ks°J ‚ttt t	ddƒ ƒd
t ksÂJ ‚ttt d ƒdttd ƒ t ks×J ‚tt t d ƒd	ttd ƒ t ksíJ ‚t| t ƒdt| ƒ t ksþJ ‚t|t t ƒtu sJ ‚td| t t ƒtu sJ ‚t|t t d
 ƒdt|t d
 ƒ t ks3J ‚t|ƒjdu s=J ‚tt| | ƒƒd	t| ƒt|ƒ t| ƒt|ƒ   ksZJ ‚d S )Nr-   r.   Tr/   ÚnrI   r   r2   r1   r3   r4   r5   r6   r7   r8   r9   r:   r;   r<   r=   r?   éùÿÿÿr@   rA   r>   )r   r   r   r	   r   r
   r   r   r   r   r    r&   rO   r   r   r   ©rD   rQ   r.   rw   rR   rR   rS   Ú	test_cschh  sR   (   &,$$(( $$$*,"2>rz   c                  C   s~   t dƒ} t| ƒ | dd¡d|  | d  d| d  d  d	| d
  d  d| d  d  d| d  d  t| d ƒ ks=J ‚d S )NrD   r   r7   r1   r?   r9   r<   ih  é   r;   i;  é   i€:	 r8   rV   i 54 )r   r   rW   r(   rX   rR   rR   rS   Útest_csch_series¥  s   >ÿ
ÿÿr}   c                      r[   )NrD   c                      r\   r]   )r   r^   rR   rX   rR   rS   r_   ®  r`   z!test_csch_fdiff.<locals>.<lambda>ra   rR   rR   rX   rS   Útest_csch_fdiff¬  rc   r~   c                  C   s>  t dƒ\} }tddd}tddd}ttƒtu sJ ‚ttƒtu s"J ‚ttƒdks*J ‚tt ƒdks3J ‚tdƒdks;J ‚td	ƒtdƒksEJ ‚t|  ƒt| ƒksPJ ‚ttt ƒttƒks\J ‚tt t ƒttƒksiJ ‚td
d  t	 ƒtd
d t	 ƒks|J ‚ttt d
 ƒtu sˆJ ‚tt t d
 ƒtu s•J ‚tddd  d t t d
 ƒtu s©J ‚tddd  d t t d
 ƒtu s½J ‚ttt ƒd	ksÇJ ‚tt t ƒd	ksÒJ ‚tdt t ƒd	ksÞJ ‚tdt t ƒdksêJ ‚ttt d ƒd
ksöJ ‚ttt t
ddƒ ƒdksJ ‚ttt d ƒtd
ƒksJ ‚tt t d ƒtd
ƒks%J ‚ttt t
ddƒ ƒtd
ƒ ks8J ‚ttt t
ddƒ ƒtd
ƒ ksKJ ‚ttt d ƒd
tdƒ ks\J ‚tt t d ƒd
tdƒ ksnJ ‚ttt t
ddƒ ƒdtdƒ ks‚J ‚ttt t
ddƒ ƒdtdƒ ks–J ‚ttt d ƒdttd ƒ ks©J ‚tt t d ƒdttd ƒ ks½J ‚t| t ƒdt| ƒ ksÌJ ‚t|t t ƒdt|t ƒ ksßJ ‚td| t t ƒdtd| t ƒ ksöJ ‚t|ƒjdu s J ‚tt| | ƒƒdt| ƒt|ƒ t| ƒt|ƒ   ksJ ‚d S )Nzx, yr.   Tr/   rw   rI   r   r1   r2   r3   r4   r6   r7   r8   r9   r:   r;   rd   r<   r5   r=   r@   r?   rA   r>   )r   r   r   r	   r   r
   r   r   r%   r   r   r    r#   rO   r   r   r   ry   rR   rR   rS   Ú	test_sech±  sL   &((  &&"$((&(&.>r   c                  C   sn   t dƒ} t| ƒ | dd¡d| d d  d| d  d  d	| d
  d  d| d  d  t| d ƒ ks5J ‚d S )NrD   r   r7   r1   r3   r;   r=   ri   é=   r?   rj   i  rd   i€  )r   r   rW   r(   rX   rR   rR   rS   Útest_sech_seriesë  rq   r   c                      r[   )NrD   c                      r\   r]   )r   r^   rR   rX   rR   rS   r_   ó  r`   z!test_sech_fdiff.<locals>.<lambda>ra   rR   rR   rX   rS   Útest_sech_fdiffñ  rc   r‚   c                  C   s  t dƒ\} }tt| ƒsJ ‚t|  ƒt| ƒ ksJ ‚ttƒtu s!J ‚tdƒdks)J ‚tdƒttdƒd ƒks7J ‚tdƒttdƒd ƒksEJ ‚ttƒtt d ksQJ ‚tt ƒt t d ks_J ‚ttd ƒtt d ksmJ ‚tt d ƒt t d ks}J ‚ttƒtu s…J ‚tt ƒt u sJ ‚ttt ƒtu s™J ‚tt t ƒt u s¥J ‚tt	ƒt	u s­J ‚tttdƒd  dt
ddƒ  ƒtt d ksÆJ ‚tt tdƒd  dt
ddƒ  ƒt t d ksáJ ‚tttd	ƒd  d
 ƒtt d ksõJ ‚tt td	ƒd  d
 ƒt t d ksJ ‚tttd	ƒd  d
 ƒtt t
ddƒ ks$J ‚tt td	ƒd  d
 ƒtt t
ddƒ ks=J ‚ttdƒƒjdu sIJ ‚ttdƒƒjdu sUJ ‚ttdƒƒjdu saJ ‚tttƒƒjdu smJ ‚tttƒ ƒjdu szJ ‚tdƒt t ks†J ‚tt dddƒjdu s”J ‚tt
ddƒƒttjƒ ks¤J ‚ttttdƒƒƒs°J ‚ttdddƒdks½J ‚ttdddƒdksÊJ ‚ttdddƒdks×J ‚tttddƒtksäJ ‚ttt ddƒt ksóJ ‚ttd	t ddƒdt t d	t  ks
J ‚ttddt  ƒƒdd
t t  dt  ks#J ‚ttddt  ƒƒddt  dt t  ks<J ‚ttddt  ƒƒddt t  dt  ksUJ ‚ttddt  ƒƒdtt  dt  kslJ ‚tddd }t|ƒjdu s|J ‚ttdddddjdu sŒJ ‚d S )!Nr-   r   r1   r3   r2   r?   r<   é   r;   r=   r7   r6   Tr5   FrQ   rF   Úv1rJ   rn   re   i·ÿÿÿéa   r8   r{   rx   é   r9   é   ióÿÿÿrH   rI   )r   r)   r   r	   r   r    r   r   r
   r   r   r   rO   rN   Úis_extended_realrL   r   r   rP   )rD   rQ   rH   rR   rR   rS   Ú
test_asinhö  sX    26(.02 .222.$r‰   c                  C   sî   t dƒ} t| ƒ t¡t| t| d d ƒ ƒksJ ‚t| ƒ t¡t| td| d  ƒ ƒks.J ‚t| ƒ t¡t tt|  dd ksBJ ‚t| dt  ƒ t¡t tt|  dt  ƒ ks\J ‚t| ƒ t¡ttt|  dd tt	 d  ksuJ ‚d S )NrD   r3   r1   FrJ   )
r   r   Úrewriter   r    r   r"   r   r!   r   rX   rR   rR   rS   Útest_asinh_rewrite7  s   **(46r‹   c                  C   s  t dƒ} t| ƒj| dd| ksJ ‚t| t ƒj| ddtt d ks$J ‚t| t ƒj| ddt t d ks8J ‚td|  ƒj| ddt| ƒ tdƒ ksNJ ‚td|  ƒj| ddt| ƒtdƒ tt  ksgJ ‚t| dt  ƒj| ddttdƒ ks|J ‚t| dt  ƒj| ddt tdƒ tt  ks–J ‚t| dt  ƒj| ddt t ttdƒ  ks°J ‚t| dt  ƒj| ddt tdƒ ksÆJ ‚tdt t|   | d  ƒj| ddtdtdƒ ƒtt d  kséJ ‚tdt t|   | d  ƒj| ddtdtdƒ ƒtt d  ksJ ‚d S ©NrD   r1   ©Úcdirr3   r2   r<   )r   r   Úas_leading_termr   r   r   r"   r    rX   rR   rR   rS   Útest_asinh_leading_term@  s   &(,2*44,FLr   c                  C   s®   t dƒ} t| ƒ | dd¡| | d d  d| d  d  d| d  d	  t| d ƒ ks-J ‚t| ƒ d| ¡}|d| d  d ksAJ ‚t| ƒ d| |d¡d
| d  d	 ksUJ ‚d S )NrD   r   rd   r<   r?   r;   é(   r9   ép   r@   )r   r   rW   r(   Útaylor_term©rD   Zt5rR   rR   rS   Útest_asinh_seriesR  s   :ÿ,r•   c                  C   sŒ  t dƒ} t| t ƒ | dd ¡tt d tdƒttƒ t t| ƒ  tdƒttƒ | tdƒd   d  dtdƒ ttƒ t | tdƒd   d  dtdƒ ttƒ | tdƒd   d	  t| d ƒ ksgJ ‚t| t ƒ | dd ¡t t d tdƒt t| ƒ tt ƒ  tdƒ| tdƒd   tt ƒ d  dtdƒ t | tdƒd   tt ƒ d  dtdƒ | tdƒd   tt ƒ d	  t| d ƒ ksÏJ ‚t| dt  ƒj| dd d
dttdƒ tdƒt |  d  tdƒ| d  d  tdƒt | d  d  t| d ƒ ksJ ‚t| dt  ƒj| dd ddtt ttdƒ  tdƒt |  d  tdƒ| d  d  tdƒt | d  d  t| d ƒ ksOJ ‚t| dt  ƒj| dd d
dttdƒ tt  tdƒt |  d  tdƒ| d  d  tdƒt | d  d  t| d ƒ ks‘J ‚t| dt  ƒj| dd ddt tdƒ tdƒt |  d  tdƒ| d  d  tdƒt | d  d  t| d ƒ ksÐJ ‚tdt t|   | d  ƒ | dd ¡tt d t	dtdƒ ƒ | ddtdƒ   ddtdƒ    | d ddt  tdƒddt     ddtdƒ    | d dtdƒddt    dt   ddtdƒ    t| d ƒ ksDJ ‚d S )NrD   r=   r3   r<   rƒ   r;   é    r9   é€  r1   r   rV   é   r2   r6   éúÿÿÿé$   rx   é   éÁÿÿÿéXÿÿÿr…   é„  é   i.ùÿÿéð  )
r   r   r   Ú_eval_nseriesr   r    r   r(   r"   r   rX   rR   rR   rS   Útest_asinh_nseries[  sŒ   ÿ"ÿ*ÿ&þ

þ ÿ$ÿ,þ(þ

þ&ÿÿÿ
ÿ.ÿÿÿ
ÿ.ÿÿÿ
ÿ(ÿÿÿ
ÿ>"ÿ(
ÿÿ6þ
þr¢   c                      r[   )NrD   c                      r\   r]   )r   r^   rR   rX   rR   rS   r_   u  r`   z"test_asinh_fdiff.<locals>.<lambda>ra   rR   rR   rX   rS   Útest_asinh_fdiffs  rc   r£   c                  C   sŽ  t dƒ} tt|  ƒsJ ‚tdƒdksJ ‚tdƒtt ksJ ‚tdƒtt d ks*J ‚ttjƒtt d ks7J ‚ttddƒƒtt tddƒ ksIJ ‚ttƒtu sQJ ‚tt	ƒt	u sYJ ‚tt	 ƒt	u sbJ ‚ttt	 ƒt	tt d  ksrJ ‚tt t	 ƒt	tt d  ksƒJ ‚tt
ƒt
u s‹J ‚ttƒttdtdƒ  ƒks›J ‚tt ƒtt dtdƒ  ƒks­J ‚ttdƒd dtdƒ  ƒtt tddƒ ksÆJ ‚ttdƒd  dtdƒ  ƒtt td	dƒ ksàJ ‚ttdƒd ƒtt d
 ksðJ ‚ttdƒ d ƒtt tdd
ƒ ksJ ‚ttdƒd ƒtt d ksJ ‚ttdƒ d ƒtt tddƒ ks+J ‚ttdtdƒ ƒd ƒtt d ks@J ‚ttdtdƒ ƒ d ƒtt td	dƒ ksYJ ‚ttdtdƒ ƒd ƒtt tddƒ ksqJ ‚ttdtdƒ ƒ d ƒtt tddƒ ksŠJ ‚tdtdƒ dtdƒ  ƒtt d ks¡J ‚tdtdƒ  dtdƒ  ƒtt tddƒ ks¼J ‚ttdƒd d
 ƒtt d ksÏJ ‚ttdƒd  d
 ƒtt td
dƒ ksæJ ‚ttdt ƒ d¡ƒdksöJ ‚ttdt ƒ d¡ƒdksJ ‚ttt dƒƒsJ ‚ttdddƒdksJ ‚ttdddƒdks*J ‚ttdddƒdks7J ‚tttddƒtksDJ ‚ttt ddƒtksRJ ‚ttd	t ddƒdt t d	t  ksiJ ‚ttdt ƒƒdt ksxJ ‚ttddt  ƒƒddt  ks‹J ‚ttddt  ƒƒddt  ksžJ ‚ttddt  ƒƒddt t  dt  ks·J ‚ttddt  ƒƒddt  d
t t  ksÐJ ‚tttdƒt ƒƒtdƒt ksãJ ‚tdddjdu sïJ ‚ttdƒƒjdu sûJ ‚ttdƒƒjdu sJ ‚tt	ƒjdu sJ ‚ttdƒƒjdu sJ ‚ttdƒd ƒjdu s+J ‚tdƒt	 t	 ks7J ‚ttdddƒjd u sEJ ‚d S )NrD   r1   r   r2   r3   r<   r;   rƒ   r9   r=   r?   rd   re   z2.31244 + 1.5708*Ir@   z2.31244 - 1.5708*Ir„   r6   FrJ   r5   r>   iëÿÿÿr›   TrQ   rF   )r   r)   r   r   r   r   rL   r   r	   r
   r   r   r    Ústrrw   r   rP   rO   rˆ   rN   r   rX   rR   rR   rS   Ú
test_acoshx  sh   $ " $24 *"**202.6&.  .&&22& r¥   c                  C   s¦  t dƒ} t| ƒ t¡t| t| d ƒt| d ƒ  ƒksJ ‚t| ƒ t¡t| d ƒt| ƒ td   td|  ƒ ks;J ‚t| ƒ t¡t| d ƒttt|  dd td   td|  ƒ ks^J ‚t| ƒ t	¡t| d ƒt| d ƒ t	t| d d ƒ|  ƒ t| d d ƒ tt| d ƒ |  t| d ƒ d  dtd|  ƒ   ks¢J ‚t ddd} t| ƒ t	¡t| d ƒt| d ƒ t	t| d d ƒ|  ƒ t| d d ƒ ksÑJ ‚d S )	NrD   r1   r3   FrJ   r5   TrI   )
r   r   rŠ   r   r    r"   r   r   r   r   rX   rR   rR   rS   Útest_acosh_rewrite½  s   2<F>4ÿÿ>ÿr¦   c                  C   sš  t dƒ} t| ƒ | ¡tt d ksJ ‚t| d ƒ | ¡tdƒt| ƒ ks&J ‚t| d ƒ | ¡tt ks5J ‚td|  ƒj| ddt| ƒ tdƒ ksKJ ‚td|  ƒj| ddt| ƒ tdƒ dt t  ksgJ ‚tt|  d ƒj| ddtdƒkszJ ‚tt |  d ƒj| dddt t tdƒ ks”J ‚t| d t|   tdƒd  ƒj| ddttdƒd ƒ ks´J ‚t| d t|   tdƒd  ƒj| ddttdƒd ƒksÓJ ‚tdt|  d  ƒj| ddttdƒ d ƒ ksîJ ‚tdt|  d  ƒj| ddttdƒ d ƒks	J ‚tt | d  |  d ƒj| ddttdƒd ƒtt  ks*J ‚tt | d  |  d ƒj| ddttdƒd ƒtt  ksKJ ‚d S )NrD   r3   r1   r   r2   r5   r<   )r   r   r   r   r   r    r   r   rX   rR   rR   rS   Útest_acosh_leading_termÊ  s   &,8&4@>66BFr§   c                  C   sÔ   t dƒ} t| ƒ | dd¡t |  tt d  t| d  d  dt | d  d  dt | d	  d
  t| d ƒ ks<J ‚t| ƒ d| ¡}|dt | d  d ksRJ ‚t| ƒ d	| |d¡dt | d	  d
 kshJ ‚d S )NrD   r   rd   r3   r<   r?   r;   r‘   r9   r’   r6   r@   )r   r   rW   r   r   r(   r“   r”   rR   rR   rS   Útest_acosh_seriesÞ  s   Xÿ0r¨   c                  C   s>  t dƒ} t| d ƒ | dd ¡tdƒt| ƒ tdƒ| tdƒd   d  dtdƒ | tdƒd   d  dtdƒ | td	ƒd   d
  t| d ƒ ksMJ ‚t| d ƒ | dd ¡tt tdƒt t| ƒ  tdƒt | tdƒd   d  dtdƒ t | tdƒd   d  dtdƒ t | td	ƒd   d
  t| d ƒ ks¢J ‚tt|  d ƒj| dd ddtdƒtdƒt |  d  tdƒ| d  d  tdƒt | d  d  t| d ƒ ksÝJ ‚tt |  d ƒj| dd ddtdƒdt t  tdƒt |  d  tdƒ| d  d  tdƒt | d  d  t| d ƒ ks J ‚tdt|  d  ƒj| dd ddttdƒ d ƒ tdƒ|  d  dtdƒ t | d  d  dtdƒ | d  d  t| d ƒ ksfJ ‚tdt|  d  ƒj| dd ddttdƒ d ƒtdƒ|  d  dtdƒ t | d  d  dtdƒ | d  d  t| d ƒ ks«J ‚tt | d  |  d ƒ | dd ¡t t ttdƒd ƒ | dtdƒ d  dtdƒ d   | d ddt  tdƒddt     dtdƒ d   | d ddt  tdƒddt     dtdƒ d   t| d ƒ ksJ ‚d S ) NrD   r1   r=   r3   r<   rƒ   r;   r–   r9   r—   r   r5   rV   r˜   r>   é@  é»  é ¢  r2   r?   iôÿÿÿrš   rx   r›   é?   r   rŸ   iŸÿÿÿrž   r    iÒ  )	r   r   r¡   r    r   r(   r   r   r   rX   rR   rR   rS   Útest_acosh_nseriesç  sŒ   "ÿÿÿ

ÿÿÿ"ÿ"þ

þ"ÿÿÿ

ÿ$
ÿÿÿÿ
ÿ2ÿÿÿ
ÿ0ÿÿÿ
ÿ:"ÿ0ÿÿ6þ
þr­   c                      r[   )NrD   c                      r\   r]   )r   r^   rR   rX   rR   rS   r_      r`   z"test_acosh_fdiff.<locals>.<lambda>ra   rR   rR   rX   rS   Útest_acosh_fdiffþ  rc   r®   c                  C   sb  t dƒ} tt|  ƒsJ ‚tdƒdksJ ‚tdƒtt ksJ ‚tdƒtu s&J ‚tdƒtt d ks2J ‚tdƒdt t d ks@J ‚ttƒtu sHJ ‚ttƒtt d ksTJ ‚tt ƒtt d ksaJ ‚ttƒttt d td ƒ kssJ ‚ttƒt	dt
dƒ ƒtt d  ks‡J ‚tt ƒt	dt
dƒ ƒtt d  ksœJ ‚tt
dƒt
dƒ ƒd	t t d
 ks°J ‚tt
ddt
dƒ  ƒƒtt d ksÄJ ‚tt
ddt
dƒ  ƒ ƒdt t d ksÛJ ‚tdt
dt
dƒ ƒ ƒtt d ksïJ ‚tdt
dt
dƒ ƒ ƒdt t d ksJ ‚tt
dƒd ƒtt d ksJ ‚tdt
dƒ ƒdt t d ks*J ‚tt
ddt
dƒ  ƒ ƒdt t d ksBJ ‚tt
dƒƒtdt
dƒ ƒksSJ ‚tdt
dƒ ƒtt
dƒd ƒksfJ ‚tdt
dt
dƒ ƒ ƒtt
dt
dƒ ƒd ƒksJ ‚tdƒttjƒksJ ‚ttdƒƒjdu s™J ‚ttdƒ d ƒjdu s¨J ‚ttdƒd ƒjdu s¶J ‚ttdƒƒjdu sÂJ ‚ttdƒƒjdu sÎJ ‚ttdddƒjd u sÜJ ‚tt
dƒ ƒttdt
dƒ ƒ ksðJ ‚tdt
dƒ ƒttt
dƒ d ƒ ksJ ‚ttdƒ ƒtttddƒƒ ksJ ‚tdt
dƒ ƒttt
dƒ d ƒ ks/J ‚tttt
dƒt
dƒ ƒƒt
dƒt
dƒ  ƒdksJJ ‚tttt
dƒt
dƒ ƒƒt
dƒt
dƒ  ƒdkseJ ‚ttt
ddt
dƒ  ƒƒƒt
ddt
dƒ  ƒ  ¡ dks„J ‚ttt
ddt
dƒ  ƒ ƒƒt
ddt
dƒ  ƒ   ¡ dks¥J ‚ttt
ddt
dƒ  ƒƒƒt
ddt
dƒ  ƒ  ¡ dksÄJ ‚tttdt
dƒ ƒƒdt
dƒ  ƒdksÛJ ‚tttdt
dƒ ƒƒdt
dƒ  ƒdksòJ ‚tttt
dƒ t
dƒ ƒƒt
dƒ t
dƒ  ƒdksJ ‚ttdt ƒ d¡ƒdksJ ‚ttdt ƒ d¡ƒdks/J ‚d S )NrD   r1   r   r2   r3   r<   r5   r?   re   rƒ   r;   r7   rV   rd   r9   r=   FTrQ   rF   z0.19869 - 1.5708*Ir@   z0.19869 + 1.5708*I)r   r)   r   r   r   r
   r	   r   r   r   r    r   r   rL   rO   rN   rˆ   r   r!   r   r   r   Úsimplifyr¤   rw   rX   rR   rR   rS   Ú
test_asech  sZ   $(*((.(."&0"&6(,&,66>B>..: $r°   c                  C   sš  t dƒ} t| ƒj| ddt| ƒ tdƒ ksJ ‚t| ƒj| ddt| ƒ tdƒ dt t  ks2J ‚t| d ƒj| ddtdƒt t| ƒ ksIJ ‚td|  ƒj| ddtt d ks\J ‚t| d ƒj| ddtt ksmJ ‚tt|  d ƒj| ddtdƒ ksJ ‚tt |  d ƒj| ddtdƒks•J ‚tt|  d ƒj| ddtdƒ ks©J ‚tt |  d ƒj| ddtdƒks½J ‚tt|  tdƒd  ƒj| dddt t ttdƒ d ƒ ksßJ ‚tt|  tdƒd  ƒj| ddttdƒ d ƒksûJ ‚tt | d  |  d ƒj| ddttdƒ d dtdƒ t d  ƒks#J ‚tt | d  |  d ƒj| ddttdƒ d dtdƒ t d  ƒksKJ ‚d S )	NrD   r1   r   r3   r2   r<   r6   r5   )r   r   r   r   r   r   r    r   rX   rR   rR   rS   Útest_asech_leading_termE  s   (4.&"((((D8PTr±   c                  C   sJ  t dƒ} t| ƒj| ddddtdƒt| ƒ | d d  d| d  d	  d
| d  d  d| d  d  t| d ƒ ks=J ‚t| ƒj| ddddtt tdƒ t|  ƒ | d d  d| d  d	  d
| d  d  d| d  d  t| d ƒ ks{J ‚t| ƒ d| ¡}|d| d  d ksJ ‚t| ƒ d| |d¡d| d  d ks£J ‚d S )NrD   r   rV   r1   r   r3   r=   r<   é    r;   r?   é`   é#   rd   r4   r2   r@   iÝÿÿÿ)r   r   rW   r   r(   r   r   r“   )rD   Zt6rR   rR   rS   Útest_asech_seriesY  s(   >ÿÿ

ÿ8ÿÿÿ

ÿ,rµ   c                  C   sÚ  t dƒ} t| d ƒ | dd ¡tdƒt|  ƒ dtdƒ |  tdƒd   d  dtdƒ |  tdƒd   d	  d
tdƒ |  tdƒd   d  t| d ƒ ksSJ ‚t| d ƒ | dd ¡tt tdƒt| ƒ  dtdƒ | tdƒd   d  dtdƒ | tdƒd   d	  d
tdƒ | tdƒd   d  t| d ƒ ks¢J ‚tt|  d ƒ | dd ¡tdƒ tdƒ|  d  dtdƒ t | d  d  dtdƒ | d  d  t| d ƒ ksÞJ ‚tt |  d ƒ | dd ¡tdƒtdƒ|  d  dtdƒ t | d  d  dtdƒ | d  d  t| d ƒ ksJ ‚tt|  d ƒ | dd ¡tdƒ tdƒ|  d  dtdƒ t | d  d  dtdƒ | d  d  t| d ƒ ksXJ ‚tt |  d ƒ | dd ¡tdƒtdƒ|  d  dtdƒ t | d  d  dtdƒ | d  d  t| d ƒ ks•J ‚tt | d  |  d ƒ | dd ¡dt t d | tdƒ dt   dtdƒ dt    | d dtdƒddt    dt   dtdƒ dt    t| d ƒ ksëJ ‚d S )NrD   r1   r=   r3   r;   r<   rƒ   é+   r–   é±   r9   r—   r>   r©   rª   r«   r6   r?   rš   r›   éH   )r   r   r¡   r    r   r(   r   r   rX   rR   rR   rS   Útest_asech_nseriesd  sl   F ÿ ÿ

ÿ*ÿÿÿ

ÿ0ÿÿ

ÿ0ÿÿ
ÿ0ÿÿ
ÿ0ÿÿ
ÿ0(ÿ0ÿÿ
þr¹   c               	   C   sV  t dƒ} t| ƒ t¡td|  td|  d ƒtd|  d ƒ  ƒks#J ‚t| ƒ t¡td|  ƒks2J ‚t| ƒ t¡tdd|   ƒttt|  dd td   tdd|   ƒ ksYJ ‚t| ƒ t	¡t| d ƒtd| d  ƒ t	td| d  ƒƒ tt t| ƒ td|  ƒ d tt| d ƒ dt| d  ƒ   tt|  ƒ dt| ƒ     ks©J ‚d S )NrD   r1   r2   FrJ   r3   )
r   r   rŠ   r   r    r   r   r   r   r   rX   rR   rR   rS   Útest_asech_rewritez  s   >NŒÿrº   c                      r[   )NrD   c                      r\   r]   )r   r^   rR   rX   rR   rS   r_   …  r`   z"test_asech_fdiff.<locals>.<lambda>ra   rR   rR   rX   rS   Útest_asech_fdiffƒ  rc   r»   c                  C   sp  t dƒ} tt| ƒsJ ‚t|  ƒt| ƒ ksJ ‚tdƒtdtdƒ ƒks%J ‚tdƒtdtdƒ ƒ ks4J ‚tdƒtu s<J ‚tdƒtdtdƒ d ƒksLJ ‚tdƒtdtdƒ d ƒ ks]J ‚ttƒt t d ksjJ ‚tt ƒtt d kswJ ‚tt tdƒtdƒ  ƒtt d	 ksŒJ ‚tttdƒtdƒ  ƒt t d	 ks¡J ‚tt dtdƒ  ƒtt d
 ks´J ‚ttdtdƒ  ƒt t d
 ksÇJ ‚tt d tdtdƒ ƒ ƒtt d ksÞJ ‚ttd tdtdƒ ƒ ƒt t d ksõJ ‚tt d ƒtt d ksJ ‚ttd ƒt t d ksJ ‚tt tddtdƒ  ƒ ƒtt d ks-J ‚tttddtdƒ  ƒ ƒt t d ksEJ ‚tt tdƒ ƒtt d ksWJ ‚tttdƒ ƒt t d ksiJ ‚tt tdƒd  ƒdt t d
 ksJ ‚tttdƒd  ƒdt t d
 ks”J ‚tt d tdƒ ƒtt d ks¨J ‚ttd tdƒ ƒt t d ks¼J ‚tt d tdtdƒ ƒ ƒdt t d ksÖJ ‚ttd tdtdƒ ƒ ƒdt t d ksïJ ‚tt tddtdƒ  ƒ ƒdt t d ks	J ‚tttddtdƒ  ƒ ƒdt t d ks"J ‚tt tdƒtdƒ  ƒdt t d	 ks:J ‚tttdƒtdƒ  ƒdt t d	 ksQJ ‚ttƒtu sZJ ‚tt tdƒ ƒt	ttdƒ ƒksnJ ‚tt d tdƒ ƒt	ttdƒ d ƒks†J ‚tt
dƒƒjdu s’J ‚tt
dƒƒjdu sžJ ‚tt
dƒƒjdu sªJ ‚tt
tƒƒjdu s¶J ‚tt
tƒ ƒjdu sÃJ ‚tdƒt t ksÏJ ‚ttdddƒjdu sÝJ ‚tt tdƒ ƒt tdtdƒ ƒ ksôJ ‚tt d tdƒ ƒt ttdƒ d ƒ ksJ ‚tttt tdƒtdƒ  ƒƒt tdƒtdƒ   ƒdks/J ‚ttttdtdƒ  ƒƒtdtdƒ   ƒdksJJ ‚ttttddtdƒ  ƒ ƒƒttddtdƒ  ƒ   ¡ dksmJ ‚ttt tddtdƒ  ƒ ƒƒt tddtdƒ  ƒ   ¡ dks’J ‚ttdt d ƒ d¡ƒdks¤J ‚ttdt d ƒ d¡ƒdks¶J ‚d S )NrD   r1   r3   r2   r   r;   r5   r?   rƒ   r7   rd   r=   r<   r6   r@   TrQ   rE   z0.0391819 - 0.193363*Iz0.0391819 + 0.193363*I)r   r)   r   r   r    r   r   r   r	   r   r   rO   rN   r
   rˆ   r   r"   r   r   r¯   r¤   rw   rX   rR   rR   rS   Ú
test_acschˆ  sd    "**&&..  00$$,*((42420.(0.4B6FJ$(r¼   c                   C   s6   t tƒdksJ ‚t t ƒdksJ ‚t tƒdksJ ‚d S )Nr   )r   r
   r   rR   rR   rR   rS   Útest_acsch_infinitiesÌ  s   r½   c                  C   s  t dƒ} td|  ƒ | ¡| ksJ ‚t| t ƒ | ¡t t d ks#J ‚t| t ƒ | ¡tt d ks4J ‚t| ƒj| ddt| ƒ tdƒ ksHJ ‚t| ƒj| ddt| ƒtdƒ tt  ks_J ‚t| td  ƒj| ddt t ttd ƒ ksyJ ‚t| td  ƒj| ddttd ƒksŽJ ‚t| td  ƒj| ddttd ƒ ks¤J ‚t| td  ƒj| ddttd ƒtt  ks½J ‚ttd t|   | d  ƒj| ddtdtdƒ ƒtt d  ksàJ ‚ttd t|   | d  ƒj| ddtdtdƒ ƒtt d  ksJ ‚d S )NrD   r1   r3   r   r2   r<   )r   r   r   r   r   r   r    rX   rR   rR   rS   Útest_acsch_leading_termÒ  s   $"(.4*,2FLr¾   c                  C   sÊ   t dƒ} t| ƒ | dd¡tdƒt| ƒ | d d  d| d  d  d| d	  d
  d| d  d  t| d ƒ ks;J ‚t| ƒ d| ¡}|d| d  d ksOJ ‚t| ƒ d	| |d¡d| d	  d
 kscJ ‚d S )NrD   r   rV   r3   r=   r<   r²   r;   r?   r³   r´   rd   r4   r6   )r   r   rW   r   r(   r“   )rD   Zt4rR   rR   rS   Útest_acsch_seriesä  s   :ÿÿ

ÿ,r¿   c                  C   s¤  t dƒ} t| t ƒ | dd ¡t t d tdƒt t| ƒ tt ƒ  d| tdƒd   dt  d  dtdƒ t | tdƒd   tt ƒ d	  d
| tdƒd   dt  d  t| d ƒ ksdJ ‚t| t ƒ | dd ¡tt d tdƒttƒ t t| ƒ  d| tdƒd   dt  d  dtdƒ ttƒ t | tdƒd   d	  d
| tdƒd   dt  d  t| d ƒ ksÁJ ‚t| td  ƒj| dd ddttd ƒ tt  dtdƒ t |  d  dtdƒ | d  d  dtdƒ t | d  d  t| d ƒ ks
J ‚t| td  ƒj| dd ddttd ƒdtdƒ t |  d  dtdƒ | d  d  dtdƒ t | d  d  t| d ƒ ksNJ ‚t| td  ƒj| dd ddttd ƒ dtdƒ t |  d  dtdƒ | d  d  dtdƒ t | d  d  t| d ƒ ks“J ‚t| td  ƒj| dd ddtt ttd ƒ dtdƒ t |  d  dtdƒ | d  d  dtdƒ t | d  d  t| d ƒ ksÛJ ‚ttd t|   | d  ƒ | dd ¡t t d tdtdƒ ƒ | ddtdƒ   ddtdƒ    | d dtdƒddt    dt   ddtdƒ    | d ddt  tdƒddt     ddtdƒ    t| d ƒ ksPJ ‚d S )NrD   r=   r3   r;   r<   r1   rƒ   r¶   r–   r·   r9   r—   r   rd   rV   é   r2   r™   i ÿÿÿé8   éT   é   rœ   rš   i€
  iðùÿÿi  i—üÿÿiø  )	r   r   r   r¡   r   r    r   r(   r   rX   rR   rR   rS   Útest_acsch_nseriesí  s¨    ÿÿ,þþ

þÿÿ*þþ

þ(ÿÿÿÿ
ÿ&ÿÿÿ
ÿ(ÿÿÿ
ÿ"
ÿÿÿÿ
ÿ0ÿ"ÿÿÿÿÿÿÿþ
ýrÄ   c                  C   sÀ   t dƒ} t| ƒ t¡td|  td| d  d ƒ ƒksJ ‚t| ƒ t¡td|  ƒks,J ‚t| ƒ t¡t| d  ƒt| d d d  ƒ tt| d d ƒƒ | d d  td   |  ks^J ‚d S ©NrD   r1   r3   )r   r   rŠ   r   r    r   r   r   rX   rR   rR   rS   Útest_acsch_rewrite  s   2.ÿ
ÿþþrÆ   c                      r[   )NrD   c                      r\   r]   )r   r^   rR   rX   rR   rS   r_     r`   z"test_acsch_fdiff.<locals>.<lambda>ra   rR   rR   rX   rS   Útest_acsch_fdiff  rc   rÇ   c                  C   sÄ  t dƒ} tdƒdksJ ‚ttƒtt d ksJ ‚tt ƒt t d ks&J ‚tdƒtu s.J ‚tdƒt u s7J ‚ttƒtu s?J ‚ttƒt t d ksLJ ‚tt ƒtt d ksYJ ‚ttt ƒtt d ksgJ ‚tt t ƒt t d kswJ ‚ttƒttt d td ƒ ks‰J ‚t|  ƒt| ƒ ks•J ‚ttdƒƒj	du s J ‚ttdƒd ƒj	d	u s­J ‚tt
d
d	dƒj	d u sºJ ‚ttdƒƒj	du sÅJ ‚ttdƒƒjd	u sÐJ ‚ttdƒƒj	du sÛJ ‚tttdƒ ƒtt d ksëJ ‚tt tdƒ ƒt t d ksýJ ‚tttdƒ ƒtt d ksJ ‚tt tdƒ ƒt t d ks!J ‚ttdtdƒ  ƒtt tddƒ ks7J ‚tttdƒd  ƒtt d ksJJ ‚ttdtdƒ  ƒt t d ks^J ‚tt dtdƒ  ƒtt tddƒ ksuJ ‚tttddtdƒ  ƒ ƒtt tddƒ ksJ ‚tt tddtdƒ  ƒ ƒtt tddƒ ksªJ ‚ttdtdƒ  ƒtt d ks½J ‚tttdƒd  ƒt t d ksÑJ ‚ttƒt t d ksßJ ‚ttddƒƒttjƒ ksïJ ‚tttt dƒƒƒsûJ ‚ttdddƒdksJ ‚ttdddƒdksJ ‚ttdddƒdks"J ‚tttddƒtks/J ‚ttt ddƒt ks>J ‚ttdt ddƒdt dt t  ksUJ ‚ttdt ƒƒdt ksdJ ‚ttddt  ƒƒddt t  dt  ks}J ‚tttd ƒƒtd ksŒJ ‚tttƒƒtks—J ‚ttddt  ƒƒddt t  dt  ks°J ‚ttdtd d  ƒƒdtd d  ksÇJ ‚ttddt  ƒƒddt  dt t  ksàJ ‚d S )NrD   r   r=   r1   r2   r3   Fr;   TrQ   rE   r<   r?   rd   r6   r5   rƒ   r„   r@   rJ   r9   iõÿÿÿrV   iàÿÿÿé{   é'   )r   r   r   r   r
   r	   r   r   r   rO   r   rˆ   r    r   rL   r)   r   rX   rR   rR   rS   Ú
test_atanh  s^    $ $"&,&(.46&( .22.6rÊ   c                  C   s´   t dƒ} t| ƒ t¡td|  ƒtd|  ƒ d ksJ ‚t| ƒ t¡t|  dt| d  ƒ  t|  ƒtd| d  ƒ td| d d  ƒ ttd| d d  ƒƒ t| ƒ  ksXJ ‚d S rÅ   )r   r   rŠ   r   r   r   r    rX   rR   rR   rS   Útest_atanh_rewriteW  s
   .fÿrË   c                  C   sŽ  t dƒ} t| ƒ | ¡| ksJ ‚t| d ƒj| ddt| ƒ d tdƒd  tt d  ks/J ‚t| d ƒj| ddt| ƒ d tdƒd  tt d  ksOJ ‚t| d ƒj| ddt| ƒd tdƒd  kshJ ‚t| d ƒj| ddt| ƒd tdƒd  ksJ ‚td|  ƒj| ddt t d ks•J ‚td|  ƒj| ddtt d ks¨J ‚tt|  d ƒj| ddtdƒtt  ks¿J ‚tt |  d ƒj| ddtdƒksÓJ ‚tt|  d ƒj| ddtdƒ ksçJ ‚tt |  d ƒj| ddt t tdƒ ksJ ‚tt | d  |  d ƒj| ddtdƒ d tt d  ks#J ‚tt | d  |  d ƒj| ddtdƒ d tt d  ksEJ ‚d S rŒ   )r   r   r   r   r   r   rX   rR   rR   rS   Útest_atanh_leading_term^  s   @@22(&.((4DHrÌ   c                  C   sb   t dƒ} t| ƒ | dd¡| | d d  | d d  | d d  | d d  t| d ƒ ks/J ‚d S )NrD   r   r7   r<   r;   r9   rV   )r   r   rW   r(   rX   rR   rR   rS   Útest_atanh_seriesr  rZ   rÍ   c                  C   s2  t dƒ} t| d ƒj| dd ddt t d tdƒd  t| ƒd  | d  | d d  | d d  t| d ƒ ks<J ‚t| d ƒj| dd d	dtt d tdƒd  t| ƒd  | d  | d d  | d d  t| d ƒ kssJ ‚t| d ƒj| dd ddtdƒ d t| ƒd  | d  | d d  | d d  t| d ƒ ks¥J ‚t| d ƒj| dd d	dtdƒ d t| ƒd  | d  | d d  | d d  t| d ƒ ks×J ‚tt|  d ƒj| dd ddtt tdƒ t|  d  d| d  d
  dt | d  d  t| d ƒ ksJ ‚tt|  d ƒj| dd d	dtdƒt|  d  d| d  d
  dt | d  d  t| d ƒ ksCJ ‚tt|  d ƒj| dd ddtdƒ t|  d  d| d  d
  dt | d  d  t| d ƒ ksxJ ‚tt|  d ƒj| dd d	dtdƒ tt  t|  d  d| d  d
  dt | d  d  t| d ƒ ks±J ‚tt | d  |  d ƒ | dd ¡t t d tdƒd  | d  | d tdƒ d td    | d tdƒd td    | d tdƒ d td    | d tdƒd td    t| d ƒ ksJ ‚d S )NrD   r1   r=   r   r3   rÀ   r<   é0   r2   rV   r‡   éQ   rš   r?   é¢   r˜   )r   r   r¡   r   r   r   r(   r   rX   rR   rR   rS   Útest_atanh_nseriesx  s¨   0
ÿÿ
ÿ
ÿ

ÿ.
ÿÿ
ÿ
ÿ

ÿ0ÿ
ÿ
ÿ

ÿ0ÿ
ÿ
ÿ

ÿ*
ÿÿÿ
ÿ.ÿÿ
ÿ0ÿÿ
ÿ,
ÿÿÿ
ÿBÿÿÿÿ
ÿrÑ   c                      r[   )NrD   c                      r\   r]   )r   r^   rR   rX   rR   rS   r_   “  r`   z"test_atanh_fdiff.<locals>.<lambda>ra   rR   rR   rX   rS   Útest_atanh_fdiff‘  rc   rÒ   c                  C   s  t dƒ} tdƒtt d ksJ ‚ttƒt t d ksJ ‚tt ƒtt d ks*J ‚tdƒtu s2J ‚tdƒt u s;J ‚ttƒtu sCJ ‚ttƒdksKJ ‚tt ƒdksTJ ‚ttt ƒdks^J ‚tt t ƒdksiJ ‚ttƒdksqJ ‚t|  ƒt| ƒ ks}J ‚tttdƒ ƒt t d ksŽJ ‚tt tdƒ ƒtt d ksŸJ ‚tttdƒ ƒt t d ks°J ‚tt tdƒ ƒtt d ksÁJ ‚ttdtdƒ  ƒt t d	 ksÔJ ‚tt tdƒd  ƒtt d	 ksçJ ‚ttdtdƒ  ƒtt tdd	ƒ ksüJ ‚tttdƒd  ƒtt td
d	ƒ ksJ ‚tttddtdƒ  ƒ ƒt t d ks*J ‚tt tddtdƒ  ƒ ƒtt d ksBJ ‚ttdtdƒ  ƒt t d ksVJ ‚tt dtdƒ  ƒtt d ksjJ ‚ttdtdƒ  ƒtt tddƒ ks€J ‚tttdƒd  ƒtt tddƒ ks–J ‚tt	dƒƒj
du s¢J ‚tt	dƒƒjdu s®J ‚tt	dƒƒjdu sºJ ‚tt	dƒƒj
du sÆJ ‚tt	dƒƒj
du sÒJ ‚tt	dƒƒjdu sÞJ ‚tt	dƒƒj
du sêJ ‚ttdddƒj
d u søJ ‚ttddƒƒtt	jƒ ksJ ‚d S )NrD   r   r3   r=   r1   r2   r<   r?   rd   r6   r;   r7   rƒ   r@   Tr5   FrQ   rF   )r   r   r   r   r
   r	   r   r    r   r   rO   rN   rˆ   r   rL   rX   rR   rR   rS   Ú
test_acoth–  sH   """"&&*,00((,,$rÓ   c               	   C   sæ   t dƒ} t| ƒ t¡tdd|   ƒtdd|   ƒ d ksJ ‚t| ƒ t¡td|  ƒks.J ‚t| ƒ t¡| t| d ƒ ttd| d d  ƒƒ tt t| d |  ƒt| | d  ƒ t| | d  ƒtdd|   ƒ   d  ksqJ ‚d S )NrD   r1   r3   r5   )	r   r   rŠ   r   r   r   r    r   r   rX   rR   rR   rS   Útest_acoth_rewriteÈ  s   6rÿrÔ   c                  C   s~  t dƒ} t| d ƒj| ddt| ƒ d tdƒd  ksJ ‚t| d ƒj| ddt| ƒ d tdƒd  ks8J ‚t| d ƒj| ddt| ƒd tdƒd  tt d  ksWJ ‚t| d ƒj| ddt| ƒd tdƒd  tt d  ksvJ ‚t| ƒj| ddtt d ks‡J ‚t| ƒj| ddt t d ks™J ‚tt|  d ƒj| ddtdƒks¬J ‚tt |  d ƒj| ddtdƒtt  ksÄJ ‚tt|  d ƒj| ddt t tdƒ ksÜJ ‚tt |  d ƒj| ddtdƒ ksñJ ‚tt | d  |  tdƒd  ƒj| ddtdƒ d tt d  ksJ ‚tt | d  |  tdƒd  ƒj| ddtdƒ d tt d  ks=J ‚d S )NrD   r1   r   r3   r2   g      à?r<   )r   r   r   r   r   r   r   rX   rR   rR   rS   Útest_acoth_leading_termÐ  s   44>>"$&00*LPrÕ   c                  C   sp   t dƒ} t| ƒ | dd¡t t d |  | d d  | d d  | d d  | d d  t| d ƒ ks6J ‚d S )	NrD   r   r7   r3   r<   r;   r9   rV   )r   r   rW   r   r   r(   rX   rR   rR   rS   Útest_acoth_seriesã  s   LÿrÖ   c                  C   s  t dƒ} t| d ƒ | dd ¡tdƒd t| ƒd  | d  | d d  | d d  t| d ƒ ks3J ‚t| d ƒj| dd ddtt d tdƒd  t| ƒd  | d  | d d  | d d  t| d ƒ ksjJ ‚t| d ƒj| dd d	dt t d tdƒd  t| ƒd  | d  | d d  | d d  t| d ƒ ks¢J ‚tt|  tdƒd  ƒj| dd ddttdƒd ƒdt |  d  d
| d  d  dt | d  d  t| d ƒ ksßJ ‚tt|  tdƒd  ƒj| dd d	dtt ttdƒd ƒ dt |  d  d
| d  d  dt | d  d  t| d ƒ ks!J ‚tt|  tdƒd  ƒj| dd ddttdƒd ƒ tt  dt |  d  d
| d  d  dt | d  d  t| d ƒ ksdJ ‚tt|  tdƒd  ƒj| dd d	dttdƒd ƒ dt |  d  d
| d  d  dt | d  d  t| d ƒ ks£J ‚tt | d  |  tdƒd  ƒ | dd ¡tt d tdƒd  d|  d  | d td
ƒ d dt d    dt | d   | d tdƒd dt d    d
| d  d  t| d ƒ ksJ ‚d S )NrD   r1   r=   r3   rÀ   r<   rÎ   r   r2   rd   rV   r’   rÏ   éh   )r   r   r¡   r   r(   r   r   r   rX   rR   rR   rS   Útest_acoth_nseriesé  s¦   2
ÿ
ÿ

ÿ.
ÿÿ
ÿ
ÿ

ÿ0
ÿÿ
ÿ
ÿ

ÿ2ÿÿÿ

ÿ*ÿÿÿÿ
ÿ4ÿÿÿÿ
ÿ4ÿÿÿ
ÿ@
ÿ ÿÿÿÿ
ÿrØ   c                      r[   )NrD   c                      r\   r]   )r   r^   rR   rX   rR   rS   r_     r`   z"test_acoth_fdiff.<locals>.<lambda>ra   rR   rR   rX   rS   Útest_acoth_fdiff   rc   rÙ   c                      sÒ   t dƒ‰ tˆ ƒ ¡ tksJ ‚tt‡ fdd„ƒ tˆ ƒ ¡ tks!J ‚tˆ ƒ ¡ t	ks+J ‚tˆ ƒ ¡ tks5J ‚t
ˆ ƒ ¡ tks?J ‚tˆ ƒ ¡ tksIJ ‚t	ˆ ƒ ¡ tksSJ ‚tˆ ƒ ¡ tks]J ‚tˆ ƒ ¡ tksgJ ‚d S )NrD   c                      s   t ˆ ƒ ¡ S )N)r   ÚinverserR   rX   rR   rS   r_     s    ztest_inverses.<locals>.<lambda>)r   r   rÚ   r   r,   ÚAttributeErrorr   r   r   r   r   r   r   r   r   r   rR   rR   rX   rS   Útest_inverses  s   rÜ   c                  C   sÊ   t dƒ} t| ƒ | ¡dksJ ‚t| ƒ | ¡d|  ksJ ‚ttfD ]}|| ƒ | ¡| ks-J ‚q ttttfD ]}d|  tjfD ]}||ƒ}| | ¡|ksLJ ‚q=q4tt	fD ]}|tjƒ}| | ¡|ksbJ ‚qRd S )NrD   r1   )
r   r   r   r   r   r   r   rL   r   r   )rD   ÚfuncÚarÚeqrR   rR   rS   Útest_leading_term  s   þ
þrà   c                  C   sâ  t ddd\} }| |t  }ttttttfD ]}||ƒ ¡ || |t  ƒks(J ‚qdD ]B}t|ƒj	d|dt| ƒt
|ƒ tt| ƒ t|ƒ  ksKJ ‚t|ƒj	d|dt| ƒt
|ƒ tt| ƒ t|ƒ  kshJ ‚t|ƒj	d|dt| ƒt| ƒ t
|ƒd t| ƒd   tt|ƒ t
|ƒ t
|ƒd t| ƒd    ksJ ‚t|ƒj	d|dt| ƒt| ƒ t|ƒd t| ƒd   tt|ƒ t
|ƒ t|ƒd t| ƒd    ksÒJ ‚t|ƒj	d|dt
|ƒt| ƒ t|ƒd t| ƒd  t
|ƒd t| ƒd    tt|ƒ t| ƒ t|ƒd t| ƒd  t
|ƒd t| ƒd     ks J ‚t|ƒj	d|dt
|ƒt| ƒ t|ƒd t| ƒd  t
|ƒd t| ƒd    tt|ƒ t| ƒ t|ƒd t| ƒd  t
|ƒd t| ƒd     ksnJ ‚q+d S )Núa,bTrF   ©TF©ÚcomplexrC   r3   )r   r   r   r   r   r   r   r   Ú	conjugateÚexpandr#   r&   )ÚaÚbÚzrÝ   rC   rR   rR   rS   Útest_complex"  sh   "
ÿ"ÿÿ"ÿÿÿ*
ÿÿÿ*
ÿ(
ÿÿ
ÿÿÿ(
ÿÿ
ÿÿÿôrê   c                  C   sN   t ddd\} }dD ]}ttttfD ]}|| ƒjd|d|| ƒks#J ‚qq
d S )Nrá   TrF   râ   rã   )r   r   r   r   r   ræ   )rç   rè   rC   rÝ   rR   rR   rS   Útest_complex_28998  s    ÿÿrë   c                  C   s>  t dƒ} tt| ƒƒ| ksJ ‚tt| ƒƒt| d ƒt| d ƒ ks"J ‚tt| ƒƒ| td| d  ƒ ks4J ‚tt| ƒƒdt| d ƒt| d ƒ  ksJJ ‚tt| ƒƒtd| d  ƒksZJ ‚tt| ƒƒ| ksdJ ‚tt| ƒƒdtd| d  ƒ ksvJ ‚tt| ƒƒ| t| d ƒt| d ƒ  ksŒJ ‚tt| ƒƒ| td| d  ƒ ksžJ ‚tt| ƒƒt| d ƒt| d ƒ |  ks´J ‚tt| ƒƒ| ks¾J ‚tt| ƒƒd|  ksÊJ ‚t	t| ƒƒtd| d  ƒ|  ksÜJ ‚t	t| ƒƒ| t| d ƒt| d ƒ  ksòJ ‚t	t| ƒƒd|  ksþJ ‚t	t| ƒƒ| ks	J ‚t
t| ƒƒd|  ksJ ‚t
t| ƒƒdt| d ƒt| d ƒ  ks-J ‚t
t| ƒƒtd| d  ƒ|  ks@J ‚t
t| ƒƒt| d ƒt| d ƒ ksUJ ‚tt| ƒƒdtd| d  ƒ kshJ ‚tt| ƒƒd|  ksuJ ‚tt| ƒƒtd| d  ƒks†J ‚tt| ƒƒt| d ƒt| d ƒ |  ksJ ‚d S rÅ   )r   r   r   r   r    r   r   r   r   r   r   r   rX   rR   rR   rS   Útest_simplifications?  s2   ($, $,$,$,.&*&"2rì   c                   C   s,   t ttdƒd ƒƒttdƒd ƒksJ ‚d S )Nr<   r3   r‡   r=   )r   r   r   r    rR   rR   rR   rS   Útest_issue_4136`  s   ,rí   c                  C   sâ   t dƒ} t| ƒ t¡t| ƒt|  ƒ d   kr"t| ƒ d¡ks%J ‚ J ‚t| ƒ t¡t t| tt d  ƒ ks;J ‚ttj	|  ƒ}t| ƒ t¡d| d|d   ksUJ ‚t
tj	|  ƒ}t| ƒ t
¡d| |d d  ksoJ ‚d S )NrD   r3   Ú	tractabler1   )r   r   rŠ   r   r   r   r   r   r   rL   r   ©rD   Z	tanh_halfZ	coth_halfrR   rR   rS   Útest_sinh_rewrited  s   (ÿ,&*rð   c                  C   sæ   t dƒ} t| ƒ t¡t| ƒt|  ƒ d   kr"t| ƒ d¡ks%J ‚ J ‚t| ƒ t¡t t| tt d  dd ks=J ‚ttj	|  ƒd }t| ƒ t¡d| d|  ksWJ ‚t
tj	|  ƒd }t| ƒ t
¡|d |d  ksqJ ‚d S )NrD   r3   rî   FrJ   r1   )r   r   rŠ   r   r   r   r   r   r   rL   r   rï   rR   rR   rS   Útest_cosh_rewriteo  s   (ÿ0"&rñ   c                  C   sæ   t dƒ} t| ƒ t¡t| ƒt|  ƒ t| ƒt|  ƒ    kr)t| ƒ d¡ks,J ‚ J ‚t| ƒ t¡tt| ƒ ttt d |  dd ksGJ ‚t| ƒ t¡tttt d |  dd t| ƒ ksbJ ‚t| ƒ t¡dt| ƒ ksqJ ‚d S ©NrD   rî   r3   FrJ   r1   )	r   r   rŠ   r   r   r   r   r   r   rX   rR   rR   rS   Útest_tanh_rewritez  s   6ÿ66"ró   c                  C   sê   t dƒ} t| ƒ t¡t| ƒt|  ƒ t| ƒt|  ƒ    kr)t| ƒ d¡ks,J ‚ J ‚t| ƒ t¡t ttt d |  dd t| ƒ ksHJ ‚t| ƒ t¡t t| ƒ ttt d |  dd ksdJ ‚t| ƒ t¡dt| ƒ kssJ ‚d S rò   )	r   r   rŠ   r   r   r   r   r   r   rX   rR   rR   rS   Útest_coth_rewriteƒ  s   6ÿ88"rô   c                  C   sì   t dƒ} t| ƒ t¡dt| ƒd t|  ƒd     kr&t| ƒ d¡ks)J ‚ J ‚t| ƒ t¡tt| tt d  dd ks@J ‚ttj	|  ƒ}t| ƒ t¡d|d  d|  ksZJ ‚t
tj	|  ƒ}t| ƒ t
¡|d d d|  kstJ ‚d S ©NrD   r1   r3   rî   FrJ   )r   r   rŠ   r   r   r   r   r   r   rL   r   rï   rR   rR   rS   Útest_csch_rewriteŒ  s   0ÿ.&*rö   c                  C   sì   t dƒ} t| ƒ t¡dt| ƒd t|  ƒd     kr&t| ƒ d¡ks)J ‚ J ‚t| ƒ t¡tt| tt d  dd ks@J ‚ttj	|  ƒd }t| ƒ t¡d| d|  ksZJ ‚t
tj	|  ƒd }t| ƒ t
¡|d |d  kstJ ‚d S rõ   )r   r   rŠ   r   r   r   r   r   r   rL   r   rï   rR   rR   rS   Útest_sech_rewrite—  s   0ÿ."&r÷   c                  C   sê  t dƒ} t| ƒ | ¡t| ƒd  ksJ ‚t| ƒ | ¡t| ƒks!J ‚t| ƒ | ¡t| ƒks.J ‚t| ƒ | ¡t| ƒd  d ks@J ‚t| ƒ | ¡t| ƒ t| ƒ ksRJ ‚t| ƒ | ¡t| ƒ t| ƒ ksdJ ‚t| ƒ | ¡d| d  d  ksvJ ‚t	| ƒ | ¡dt
| d d ƒ ks‰J ‚t| ƒ | ¡dt
| d ƒt
| d ƒ  ks J ‚t| ƒ | ¡t| ƒ t¡ | ¡ ¡ ksµJ ‚t| ƒ | ¡d| d  d  ksÇJ ‚t| ƒ | ¡d| t
d| d  ƒ  ksÜJ ‚t| ƒ | ¡d| d t
d| d  ƒ  ksóJ ‚d S )NrD   r5   r3   r1   r2   )r   r   Údiffr   r   r   r   r   r   r   r    r   rŠ   r   Ztogetherr   r   r   rX   rR   rR   rS   Útest_derivs¢  s    $$$$&.*$*2rù   c                  C   s´   t dƒ\} }t| | ƒjddt| ƒt|ƒ t| ƒt|ƒ  ks"J ‚td|  ƒjdddt| ƒ t| ƒ ks8J ‚td|  ƒjdd ¡ t| ƒd dt| ƒ t| ƒd   ksXJ ‚d S ©Nr-   T)Ztrigr3   r<   )r   r   ræ   r   ©rD   rQ   rR   rR   rS   Útest_sinh_expansion³  s   8,"ÿrü   c                  C   s¸   t dƒ\} }t| | ƒjddt| ƒt|ƒ t| ƒt|ƒ  ks"J ‚td|  ƒjddt| ƒd t| ƒd  ks:J ‚td|  ƒjdd ¡ dt| ƒd  t| ƒ t| ƒd  ksZJ ‚d S rú   )r   r   ræ   r   rû   rR   rR   rS   Útest_cosh_expansion»  s   80"ÿrý   c                  C   s˜   t ddd} t ddd}t| ddjdu sJ ‚t| d| t t  ddjdu s*J ‚ttt d	 ddjdu s9J ‚td
t t d	 ddjdu sJJ ‚d S ©Nr.   TrF   rw   r/   FrJ   r3   r=   r<   )r   r   Úis_positiver   r   ©r.   rw   rR   rR   rS   Útest_cosh_positiveÂ  s   &&r  c                  C   s°   t ddd} t ddd}t| ddjdu sJ ‚t| d| t t  ddjdu s*J ‚ttt d	 ddjdu s9J ‚td
t t d	 ddjdu sJJ ‚ttjddjdu sVJ ‚d S rþ   )r   r   Zis_nonnegativer   r   r   ZZeror   rR   rR   rS   Útest_cosh_nonnegativeÍ  s   &"r  c                  C   s|   t ddd} t| ƒjd u sJ ‚t| ƒjd u sJ ‚t| ƒjd u s!J ‚t| ƒjd u s*J ‚t| ƒjd u s3J ‚t| ƒjd u s<J ‚d S )Nré   FrF   )r   r   rO   r   r   r   r   r   )ré   rR   rR   rS   Útest_real_assumptions×  s   r  c                  C   sô   t ddd} t ddd}t|ƒjdu sJ ‚t| ƒjdu sJ ‚t|ƒjdu s'J ‚t| ƒjdu s0J ‚t|ƒjdu s9J ‚t| ƒjdu sBJ ‚t|ƒjdu sKJ ‚t| ƒjdu sTJ ‚t|ƒjdu s]J ‚t| ƒjdu sfJ ‚t|ƒjdu soJ ‚t| ƒjdu sxJ ‚d S )NrH   TrI   rw   )Únegative)	r   r   Zis_negativerÿ   r   r   r   r   r   )rH   rw   rR   rR   rS   Útest_sign_assumptionsà  s   r  c                      s\  t dƒ‰ ttˆ ƒˆ  ƒ ˆ ¡ttˆ ƒˆ  ƒksJ ‚tt‡ fdd„ƒ ttˆ ƒˆ  ƒ ˆ ¡tdtdƒ ƒks7J ‚tt‡ fdd„ƒ t	tˆ ƒˆ  ƒ ˆ ¡dksOJ ‚tt‡ fdd„ƒ t
tˆ ƒˆ  ƒ ˆ ¡t
tˆ ƒˆ  ƒksmJ ‚tt‡ fd	d„ƒ ttˆ ƒˆ  ƒ ˆ ¡dks…J ‚tt‡ fd
d„ƒ ttˆ ƒˆ  ƒ ˆ ¡tdtdƒ ƒks£J ‚tt‡ fdd„ƒ d S )NrD   c                      ó   t tdˆ  ƒƒ ˆ ¡S ©Nr1   )r   r   r   rR   rX   rR   rS   r_   ö  ó    z"test_issue_25847.<locals>.<lambda>r1   r3   c                      r  r  )r   r   r   rR   rX   rR   rS   r_   ú  r  r   c                      r  r  )r   r   r   rR   rX   rR   rS   r_   þ  r  c                      r  r  )r   r   r   rR   rX   rR   rS   r_     r  c                      r  r  )r   r   r   rR   rX   rR   rS   r_     r  c                      r  r  )r   r   r   rR   rX   rR   rS   r_   
  r  )r   r   r&   r   r,   r+   r   r   r    r   r   r   r   r   rR   rR   rX   rS   Útest_issue_25847ñ  s   ****r	  c                  C   s®   t dƒ} dtdd|  d  ƒ ttdƒd tdƒd | d   ƒ }dtt| d d ƒt| d ƒt| ƒ d  dt| d ƒ t| ƒ  ƒ }||  | ¡t| d ƒksUJ ‚d S )	NrD   r3   r1   r<   r;   rd   r=   r?   )r   r   r   r   r    rW   r(   )rD   Úg1Úg2rR   rR   rS   Útest_issue_25175  s   <H"r  N)„Z!sympy.calculus.accumulationboundsr   Zsympy.core.functionr   r   Zsympy.core.numbersr   r   r   r   r	   r
   r   r   Zsympy.core.singletonr   Zsympy.core.symbolr   r   Z$sympy.functions.elementary.complexesr   r   Z&sympy.functions.elementary.exponentialr   r   Z%sympy.functions.elementary.hyperbolicr   r   r   r   r   r   r   r   r   r   r   r   Z(sympy.functions.elementary.miscellaneousr    Z(sympy.functions.elementary.trigonometricr!   r"   r#   r$   r%   r&   r'   Zsympy.series.orderr(   Zsympy.core.exprr)   r*   r+   Zsympy.testing.pytestr,   rT   rY   rb   rh   rk   rl   rm   rp   rr   rs   ru   rv   rz   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  rR   rR   rR   rS   Ú<module>   s´    (8$MIHL=:A		E	B	D		C2!		
	