
    gv4                     j   d dl mZ d dlmZ d dlmZmZmZ d dlm	Z	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 d dlmZmZmZmZ d d	lmZ d d
lmZ d dlm Z m!Z!m"Z"m#Z#m$Z$m%Z% d dl&m'Z'm(Z(m)Z)m*Z* d dl+m,Z, d dl-m.Z. d dl/m0Z0 d dl1m2Z2 d dl3m4Z4 d dl5m6Z6 d dl7m8Z8m9Z9m:Z: d dl;m<Z<m=Z= d dl-m>Z>  ed          \  Z?Z@ZAZB ed          ZCd ZDd ZEd ZFd ZGd ZHd ZId ZJd ZKd  ZLd! ZMd" ZNd# ZOd$ ZPd% ZQd& ZRd' ZSe<d(             ZTd) ZUd* ZVd+ ZWd, ZXd- ZYd. ZZd/ Z[d0 Z\e=d1             Z]d2 Z^d3 Z_d4 Z`d5 Zad6 Zbd7S )8    )Sum)Add)
DerivativeFunctiondiff)IRationalpi)EqNe)Symbolsymbols)LambertWexplog)asinhcoshsinhtanhsqrt)	Piecewise)acosasinatancossintan)besseljbesselkbesselyjn)erf)Integral)And)Matrix)ratsimp)simplify)
componentsheurischheurisch_wrapper)XFAILslow)	integratezx,y,z,nufc            	         t          t          t          z  t                    t          hk    sJ t          dt          t          z   z  t                    t          hk    sJ t          t          t                    t                    t          t                    t          hk    sJ t          t          t                    t	          t          t                              z  t                    t          t                    t          t                    t	          t          t                              t          hk    sJ t          t          t          t          t                    t          z            z  t                    t          t          t          t                    z            t          t          t                    hk    sJ t          t          t          dd          z  t	          t          t                              z  t                    t          t                    t          t          dd          z  t	          t          t                              t          hk    sJ t          t          t                    t                    t          t          t                    hk    sJ t          t          t          t                    t                    t                    t          t          t                    t          t          t                    t                    hk    sJ t          t          t                    t          t          t                    t                    z  t                    t          t          t                    t          t          t                    t                    t          t          t                    t                    hk    sJ d S )N      6   )r)   xyr   r   r   r   r	   r/   r   r        _/var/www/html/ai-engine/env/lib/python3.11/site-packages/sympy/integrals/tests/test_heurisch.pytest_componentsr9      s   ac1!$$$$aQi##s****c!ffa  SVVQK////c!ffT#a&&\\)1--	QQc!ffq)* * * *aCFF1Hoq))	Qs1vvX3q66"# # # #a"b)))$s1vv,,6::	QHQOO#T#a&&\\156 6 6 6 addA	
AaDD	   j1q))1--	
AaDD*QqTT1%%&' ' ' 'add4!a==(!,,	
AaDD*QqTT1%%z!A$$':':;< < < < < <r7   c                      t          t          t          t          t          t          t          t          t                    z            z            z  t                    t                    sJ d S N)
isinstancer.   r4   r   r$   r6   r7   r8   test_issue_10680r=   -   sJ    i3q#aQi..'8#9#9 9!<<hGGGGGGGr7   c            
          t          t          t          t          t	          t                              z            t          ddf          dk    sJ d S )Nr1   r   )r.   r   r4   r   absr6   r7   r8   test_issue_21166rA   1   sA    S4A<<((1b!*55::::::r7   c                  R   t          dt                    t          k    sJ t          t          t                    t          dz  dz  k    sJ t          t          dz  t                    t          dz  dz  k    sJ t          t          t                    t          t          z  k    sJ d S )Nr1      r2      )r*   r4   r+   r5   r6   r7   r8   test_heurisch_polynomialsrE   5   s    Aq>>QAq>>QT!V####ArE1Br))))Aq!!QqS((((((r7   c                  
   t          dt          z  t                    t          t                    k    sJ t          ddt          z   z  t                    t          t          dz             k    sJ t          dt          t          t                    z   z  t                    t          t          t          t                    z             k    sJ t          dt          dz  z  dt          dz  z  dz
  z  t                    dt          dt          dz  z  dz
            z  dz  dt          dt          dz  z  dz             z  dz  fv sJ t          dt          dz  z  dt          dz  z  dz   z  t                    dt          dt          dz  z  dz             z  dz  k    sJ t          dt          dz  z  t                    dt          z  k    sJ t          dt          dz  z  t                    ddt          dz  z  z  k    sJ d S )	Nr1   rC            r?      )r*   r4   r   r   r5   r6   r7   r8   test_heurisch_fractionsrL   =   s   AaCs1vv%%%%Aq1uIq!!SQZZ////Aq3q66zNA&&#a#a&&j//9999 AadF	!Q$
 c!AqD&1*oo-2Ac"QT'A+6F6F4F4KLM M M MAadFAadFQJ'++qQq!tVaZ/@2/EEEEEAadFA"Q$&&&&Bq!tGQ1a1f:------r7   c                  z   t          t          t                    t                    t          t          t                    z  t          z
  k    sJ t          t          dt          z            t                    t           t          t          d          z  z   t          t          t                    z  z   k    sJ t          t          t          dz            t                    t          t          t          dz            z  dt          z  z
  dt          z  t          t                    z  dt          z  z
  fv sJ d S )N   rC   )r*   r   r4   r6   r7   r8   test_heurisch_logrO   N   s    CFFA!CFF(Q,....C!HHa  QB3q66MAc!ffH$<<<<<C1IIq!!aAqD		kAaC&71SVVac9I%JJJJJJJr7   c            
      P   t          t          t                    t                    t          t                    k    sJ t          t          t                     t                    t          t                      k    sJ t          t          dt          z            t                    t          dt          z            dz  k    sJ t          t          t          t                    z  t                    t          t          t                    z  t          t                    z
  k    sJ t          t          t          t          dz            z  t                    t          t          dz            dz  k    sJ t          t          t          dz             t                    J t          dt          z  t                    dt          z  t          d          z  k    sJ t          t          dt          z  z  t                    t          dt          z  z  t          d          z  dt          z  t          d          dz  z  z
  k    sJ t          t	          t          t
          z  t          z  t          ddft
          ddf          j        t                    t          t          t
          z  z  t          z  t
          dz   z  k    sJ t          t          t          t
          z  t
          ddf          j        t
                    t          t
          z  t          t                    z  k    sJ t          t
                     t          t          t          z
            t          t
          t          t          t          z
            z            z  t          t
          t          t          t          z
            z            z
  z  } t          t          t
                    t          t
           t          t          t          z
            z            z  t
                    | k    sJ d S )Nr2   rC   rJ   r1   rN   )
r*   r   r4   r   r$   zr5   functionr   r   )antis    r8   test_heurisch_exprT   T   s   CFFA#a&&((((CGGQCGG8++++C1IIq!!SAYY^3333Ac!ffHa  Ac!ffHs1vv$55555Ac!Q$iiK##s1a4yy1}4444CAJJ""***AqD!1SVV++++AadFA!AqD&Q-!Q$s1vv|2C"CCCCCHQT!VaAYAq	::CQGGAaQRdFSTHWXYZWZK[[[[[C1q!Qi((1155Ac!ffDDDD FF7DQKKAd1q5kkM 2 22S4A;;5G5GGHDCFF3r$q1u++~...22d::::::r7   c            	         t          t          t                    t                    t          t                     k    sJ t          t          t          t                    z  dz   t                    t          t          t          t                    z  z
  k    sJ t          t          t                    t                    t          t                    k    sJ t          t          t                    t                    t          dt          t                    dz  z             dz  t          t          t                    t          z             t          t          z  z   t          t          t                    t          z
            t          t          z  z
  fv sJ t          t          t                    t          t                    z  t                    t          t                     t          t                    z  k    sJ t          t          t                    t          t                    z  t                    t          t                     t          t                    z  k    sJ t          t          t                    t          t                    z  t                    t          t                    dz  dz  t          t                    dz   dz  fv sJ t          t          t                    t          t                    z  t                    t          t          t                              k    sJ t          t          t          dt          z            z  t                    t          dt          z            dz  t          t          dt          z            z  dz  z
  k    sJ t          dt          z  dz  t          dz  z  t          t                    z  t                    dt          z  dz  t          dz  t          t                    z  dt          t                    z  z
  dt          z  t          t                    z  z   z  k    sJ t          t          t          dz            t          t          dz            z  t                    dt          z  t          dt          dz  z
            t          t          dz            z  z
  t          dt          dz  z
            t          t          dz            z  z   t          t          t          dz            z  t          t          dz            z  z   k    sJ t          t          t                    t          t                    dz  dz   z  t                    t          t          t                               k    sJ t          dt          t                    dz   z  t                    dt          d          z  t          t          d          t          t          dz            z  dz            z  dz  k    sJ t          dt          t                    z  t          t                    z  t          t                    dz  dz   z  t                    t          t          d          t          t                    z  dz
            t          t          d          t          t                    z  dz             z
  k    sJ t          dt          t                    z  t                    dt          t          t          dz                      z  k    sJ d S )Nr1   rC      1   rK      rN   )r*   r   r4   r   r
   r   r   r   r5   r   r   r   r   r   r   r6   r7   r8   test_heurisch_trigonometricrY   h   s   CFFA3q66'))))Bs1vvIM1%%RAY6666CFFA#a&&((((CFFAAA	M1CFFQJ!A#CFFQJ!A##     CFF3q66M1%%#a&&Q7777CFF3q66M1%%#a&&Q7777 CFF3q66M1%%#a&&!)a-#a&&!)a)HHHHHCFF3q66M1%%SVV4444Ac!A#hhJ""c!A#hhmaAaCj1n&DDDDDAbDFQTM#a&&(!,,"Q1SVVc!ffH9 s3q66z9* 1+ + + + + D1IIQqS		)1--1R!Q$YaPQc7R1RQT	??D1II
%2&()$qs))D1II(=2> > > > > CFFCFFAIaK(!,,c!ff====As1vvaxL!$$$q''	$tAwws1Q3xx7G7I2J2J(J1(LLLLLAc!ffHSVVOSVVQY]3Q774QA
A < <DGGCFFNQ&''<( ( ( ( ( Ad1ggIq!!QtD1II%6666666r7   c                     t          t          t                    t                    t          t                    k    sJ t          t          t                    t                    t          t                    k    sJ t          t          t          t                    z  t                    t          t          t                    z  t          t                    z
  k    sJ t          t          t          t                    z  t                    t          t          t                    z  t          t                    z
  k    sJ t          t          t	          t          dz            z  t                    t          dz  t	          t          dz            z  dz  t	          t          dz            z   t          t          dt          dz  z             z  dz  z
  k    sJ d S NrC   rK   )r*   r   r4   r   r   r   r6   r7   r8   test_heurisch_hyperbolicr\      sN   DGGQ477****DGGQ477****Ad1ggIq!!QtAwwYa%88888Ad1ggIq!!QtAwwYa%88888	%!**a qDqsOA-ac

:QtA1H~~=Ma=OOP P P P P Pr7   c            	         t          t          t                    t          t                    z  t                    t          t                    t          t                    z  dz  t          t                    t	          t                    z  dz  z
  k    sJ t          t          t          t          t                     z            t                    dt          z  t	          t          t          t                     z            z  t          t                     z  dt          t          t          t                     z            z  z
  k    sJ d S NrC   )r*   r   r4   r   r   r   r6   r7   r8   test_heurisch_mixedr_      s    CFF3q66M1%%QAq3q66#a&&=?)JJJJJC$r((
OOQ''1Q3s1T1"XX:+>tQBxx+G!CPQRVXYWYRZRZPZOOJ[+[[[[[[[r7   c            
         t          dt          t                    z  t                    dt          t                    z  k    sJ t          dt          t                    dz  z  t                    dt          t                    z  k    sJ t          t          t                    dz  t                    dt          t                    dz  z  dz  k    sJ t          t          t                    t          t	          t                              z  t                    dt          t	          t                              dz  z  dz  k    sJ t          d          } t          t          | t          t                    z            t                    d| dz  z  t          | t          t                    z            z  dt          t                    z  t	          | t          t                    z            z  | z  z
  k    sJ t          t          | t          t                    z            t                    t          dt          t                    z  t	          t          t                    | z            z  | z  dt          t          t                    | z            z  | dz  z  z   t          | d          fd          k    sJ t          dd	
          } t          t          | t          t                    z            t                    d| dz  z  t          | t          t                    z            z  dt          t                    z  t	          | t          t                    z            z  | z  z
  k    sJ d S )Nr1   rC   rN   rJ   rG   r5   r   )r   TTpositive)	r*   r   r4   r   r   r   r+   r   r   r5   s    r8   test_heurisch_radicalsrd      s   Ad1ggIq!!QtAwwY....Ad1ggqjL!$$477
2222DGGQJ""aQ
l1n4444CFF4A<<'++r$s1vv,,//A!/CCCCCsAC$q''	NNA&&!AqD&QtAwwY*?	$q''	#aQi.. "+# # # # #C$q''	NNA..)	DGGCQ	NN	"1	$qT!WWQY'71'<	<bAhhG3 3     	sT"""AC$q''	NNA..!AqD&QtAwwY2G	$q''	#aQi.. "3# # # # # # #r7   c                     t          t          t                    t                    t          t          t                    z  t          t          dz             t	          t
                    z  z   k    sJ t          t          t          dz             t          t                    z  t                    t	          t
                    t          t                    dz  z  dz  k    sJ d S r[   )r*   r#   r4   r   r   r
   r6   r7   r8   test_heurisch_specialrf      s    CFFA!CFF(S!Q$ZZR-@"@@@@@CAJJs1vv%q))T"XXc!ffai-?!-CCCCCCCr7   c            
      8   t          dt          t          z   z  t                    t          t          t          z             k    sJ t          dt          t	          d          z   z  t                    t          t          t	          d          z             k    sJ t          t          t          t          t          t          z   t          z             t                    t                              t          t          t          z   t          z             k    sJ d S Nr1   rC   )r*   r4   r5   r   r   r(   r   rQ   r6   r7   r8   test_heurisch_symbolic_coeffsri      s    Aq1uIq!!SQZZ////Aq477{OQ''3q477{+;+;;;;;D#a!eai..!44a8899SQ^^KKKKKKr7   c            
         t          d          } t          dt          dz  | z   z  t                    t          t	          t          t          |            z
            dt          |            z  z  t	          t          t          |            z             dt          |            z  z  z
  t          | d          fdt          z  df          k    sJ t          dd          } t          dt          dz  | z   z  t                    t          t          t          |           z            t          |           z  k    sJ d S )Nr5   r1   rC   r   r?   Tra   )r   r+   r4   r   r   r   r   r   rc   s    r8   "test_heurisch_symbolic_coeffs_1130rk      s   sAAq!taxL!,,	T1"XX$r((
#c!dA2hh,&7&7488&DDq!HH1d|1 1     	sT"""AAq!taxL!,,aQia1HIIIIIIr7   c                     t          t          ddt          dz  z  z             t          g           t          t          ddt          dz  z  z             z  dz  t          d          t          t          d          t          z            z  dz  z   k    sJ t          t          ddt          dz  z  z
            t          g           t          t          ddt          dz  z  z
            z  dz  t          d          t	          t          d          t          z            z  dz  z   k    sJ t          dt          ddt          dz  z  z             z  t          g           t          d          t          t          d          t          z            z  dz  k    sJ t          dt          ddt          dz  z  z
            z  t          g           t          d          t	          t          d          t          z            z  dz  k    sJ t          t          dt          dz  z            t          g           t          dt          z            t          t          d          t          z            z  dz  k    sJ t          dt          ddt          dz  z  z
            z  t          g           t	          t          t          dd	          z            dz  k    sJ t          dt          ddt          dz  z  z             z  t          g           t          t          t          dd	          z            dz  k    sJ t          dt          d	t          dz  z  dz
            z  t          g           t          d	          t          d	t          z  t          d	          t          d	t          dz  z  dz
            z  z             z  d	z  k    sJ d S )
Nr1   rV   rC   hints   i	   rK   rN   )
r*   r   r4   r   r   r   r
   r#   r	   r   r6   r7   r8   test_heurisch_hackingrq      sq   DQq!tV$$ar222	$q1QT6z

1tAwwuT!WWQY'7'77::; ; ; ;DQq!tV$$ar222	$q1QT6z

1tAwwtDGGAI6r99: : : : Ad1qAv:&&&444Qd1ggai   "# # # #Ad1qAv:&&&444QT!WWQY!" " " " C1a4LL!2...QrT

3tAwwqy>>!"$% % % % Ad1qAv:&&&444Qx1~~q ! ! ! ! Ad1qAv:&&&444aA!" " " " Ad1QT6!8nn$ar222773qsT!WWT!AqD&1*%5%555666q89 9 9 9 9 9r7   c                  X    t          t          t                    t                    J d S r;   )r*   r/   r4   r6   r7   r8   test_heurisch_functionrs      s$    AaDD!$$$$$r7   c                     t          t          t                    t                    } t          t          t                    | z  t                    t          t                    dz  dz  k    sJ t          t          t                    dz  | z  t                    t          t                    dz  dz  k    sJ t          | t          t                    z  t                    t	          t          t                              k    sJ d S )NrC   rN   )r   r/   r4   r*   r   )dfs    r8   !test_heurisch_function_derivativerv      s     
addABAaDDGQ1Q44719,,,,AaDD!GBJ""addAgai////BqttGQ3qtt99,,,,,,r7   c            	      $   dt           t          z   z  } t          | t                    t          t          t           z             k    sJ dt           t          z
  z  } t          | t                    t          t          t           z
             k    sJ dt           t          z
  t           t          z   z  z  } t          | t                    t	          t          t          t           z
             dt           z  z  t          t          t           z             dt           z  z  z   t          t           d          fdt          z  df          k    sJ t          t          dz  t           t          z
  t           t          z   z  z            } t          | t                    t          t          t          dz   t          dz  t           dz  z
  z            z  t           dz  t          t          dz   t          dz  t           dz  z
  z            z  t          z  z
  k    sJ d S )Nr1   rC   r   T)r5   r4   r+   r   r   r   r   )r/   s    r8   test_heurisch_wrapperrx      s   	1q5	AAq!!SQZZ////	1q5	AAq!!c!a%jj[0000	AEAE?AAq!!Y
a!e**ac	SQZZ1-	-r!Qxx81Q3+&G &G G G G G 	QTAEAE?#$$AAq!!QtQTE1a4!Q$;,?'@'@%@d4Aq!tad{#$$$Q&&' ' ' ' ' ' 'r7   c                      t          dt          dt          t                    dz  z   z  z  t                    t          t          t                              k    sJ d S rh   )r*   r4   r   r   r6   r7   r8   test_issue_3609rz      sG    AqAA	M*+Q//4A<<??????r7   c                     d } t           dz  dt           dz  z  z
  dt           dz  z  z
  dt           z  z   dz
  t           dz  dt           dz  z  z   dt           dz  z  z   dt           dz  z  z   z  }ddt           dz  z  z   dt           z  z   d	t           d	z  z  z   t           d
z  dt           d	z  z  z   dt           z  z   z  t          t                     z   } | t          t          |t                               t                     |k    sJ d S )Nc                 J    | j         rt          fd| j        D              S | S )Nc                 >    g | ]}|                               |S r6   )has).0argr4   s     r8   
<listcomp>z6test_pmint_rat.<locals>.drop_const.<locals>.<listcomp>  s(    BBB#cggajjB#BBBr7   )is_Addr   args)exprr4   s    `r8   
drop_constz"test_pmint_rat.<locals>.drop_const   s4    ; 	BBBBBBBCCKr7   rV      rK   rC      rH   rI   rN   rG   )r4   r   r'   r*   )r   r/   gs      r8   test_pmint_ratr      s       
A1a4!AqD&	 1Q3	&	*QTAadF]R1W-DqAv-MNA	
Qq!tVac	AadF	"QTAadF]QqS%89CFFBA:ghq!nn--q11Q666666r7   c                  z   t           t          t                     z
  t          t                     dz  z  t          t                     z   } t           dz   dz  t           t          t                     z  z
  t          t          t                     dz  dz             dz  z   }t          | t                     |k    sJ d S )NrC   r1   )r4   r   r   r*   r/   r   s     r8   test_pmint_trigr     s    	
SVVs1vvqy 3q66)A	
Aa!CFF(SQQ//11AAq>>Qr7   c                  n   dt           z   t           t          t                     z  z   t           t          t                     z   t          t                     z   dz
  z  t           t          t                     z   t          t                     z   dz  z  t           z  } t          t           t          t                     z   t          t                     z             dt           t          t                     z   t          t                     z   z  z   }t          t	          | t                               |k    sJ d S rh   )r4   r   r   r'   r*   r   s     r8   test_pmint_logexpr     s    	
Q3q66	AAJQ/!34a#a&&j3q666IA5MMaOAAAJQ  1a#a&&j3q66&9#::A8Aq>>""a''''''r7   c                     t          t          dz             t          t                    z  t          t                    dz  t          t                    dz  z
  t          t                    z
  dz   z  } t          t                    t          t          t                    dz
            z  dz  t          t                    t          t          t                    dz             z  dz  z
  t          t                    dt          t                    z  dz
  z  z
  }t          t          | t                              |k    sJ d S )NrC   rN   r1   r   rK   )r   r4   r#   r   r
   r   r'   r*   r   s     r8   test_pmint_erfr     s    QTE

3q663q6619s1vvqy03q669A=>ARSVVaZ "T"XXc#a&&1*oo%=a%??$r((AcRSffHWXLBYYA8Aq>>""a''''''r7   c                      t          t                    } t          t          t                    z  t          z
  t          t          t                    z  z   }t          | t                    |k    sJ d S r;   )r   r4   r*   r   s     r8   test_pmint_LambertWr      sO    A	(1++AhqkkM)AAq>>Qr7   c                  l   t          t          dz   t                    t          t          t                    z  } t          t          t                    z  t          t          t          t                              z
  }t	          | t                    |k    sJ t          t          t          t                    z  t          t          t          dz   t                    z  z
  t          z  } t          t          t                    }t	          | t                    |k    sJ t          t          dz   t                    t          t          t                    z  } t          t          t                    z  t          t          t          t                              z
  }t	          | t                    |k    sJ d S )Nr1   )r   nur4   r   r*   r"   r   s     r8   test_pmint_besseljr   '  s   Q72q>>)A
3q66	CA'''AAq>>Q	GBNN	QwrAvq111	114AAAAq>>Q
261bQiiA
3q66	C2q		NN"AAq>>Qr7   c                     t           t          t          t                     z  t          t          dt           z            z  } dt           z  t          t          t                     z  t          t          dz
  dt           z            z  dz  t           t          t          dz
  t                     z  t          t          dt           z            z  dz  z   }t	          | t                     |k    sJ t           t          t          t                     z  t          t          dt           z            z  } dt           z  t          t          t                     z  t          t          dz
  dt           z            z  dz  t           t          t          dz
  t                     z  t          t          dt           z            z  dz  z
  }t	          | t                     |k    sJ d S )NrC   rJ   r1   rN   rG   )r4   r   r   r!   r*   r    r   s     r8   test_pmint_bessel_productsr   8  sR   	'"a..QqS)))A
1WR^^GBFAaC0002QwrAvq7I7I5I'RTVWXYVYJZJZ5Z[\5\\AAq>>Q	'"a..QqS)))A
1WR^^GBFAaC0002QwrAvq7I7I5I'RTVWXYVYJZJZ5Z[\5\\AAq>>Qr7   c                      d } d | t                     dt           | t                               t            | t                     z   z  z   z  z   d | t                     z   z  t            | t                     z   z  }t          t           t          t	          t                               z             t          t          t	          t                                         z   }t          |t                     |k    sJ d S )Nc                 :    t          t          |                     S r;   )r   r   )r4   s    r8   omegaz%test_pmint_WrightOmega.<locals>.omegaF  s    Ar7   r1   rC   )r4   r   r   r   r   r   r*   )r   r/   r   s      r8   test_pmint_WrightOmegar   E  s          
UU1XXSq]]a%%((l;;<	<q5588|LaRWRWXYRZRZl[AAQ   !!CQ(8(8$9$99AAq>>Qr7   c                      t          t          ddt          dz  z  z             t          g           dt          z  t          dt          dz  z  dz             z  dt          dt          z            z  z   k    sJ d S )Nr1   g      ?rC   rm         ?g      ?)r*   r   r4   r   r6   r7   r8   test_RRr   O  s|     DT!Q$Y''"555Ad419q=!!!Cc!e$445 5 5 5 5 5r7   c                     t          d          \  }  t          d          |           }fd}t           ||          |          }t           ||           |           }||                    ||           k    sJ d S )Nzt RrQ   c                 :    | t          dz  | dz  z
            z  S r^   r   )r4   Rs    r8   r/   ztest_issue_22527.<locals>.fc  s"    tAqD1a4K    r7   )r   r   r.   subs)trQ   r/   UzUtr   s        @r8   test_issue_22527r   `  s    6??DAqaA! ! ! ! !	11Q44		B	11Q44		BAr7   c                     t          dd          } t          | dz   ddt          z
  dz  z  z            }t          || g           J t	          t
                    t          dt          z   dz            z  dz  }t          t          t           | dz  z  dz            | ddf          |t          |z  z
  k    sJ t          t          dz   ddt          z
  dz  z  z            }t          |t          g           J t	          t
                    t          dt          z   dz            z  dz  }t          t          t           t          dz  z  dz            t          ddf          |t          |z  z
  k    sJ d S )NrT)realrC   rm   r1   r   )	r   r   r   r*   r   r
   r#   r.   r4   )r   as     r8   %test_heurisch_complex_erf_issue_26338r   j  sX   $AQTE1a!eaZ< !!AAq###+++Ra!eQY!AS!AqD^^aAY//1qs7::::QTE1a!eaZ< !!AAq###+++Ra!eQY!AS!AqD^^aAY//1qs7::::::r7   c            	         t          d          } t          ddd          \  }}}}t          t          | |z            gg          }t	          dd          }dd|dd	d
dg\  }}}	}
}}}||
|z  dt          ||z
   |z            z
  z  ||z  dt          ||z
   |z            z
  z  z   z  }||
|z  t          ||z
   |z            z  t          |	|z
  |z            dz
  z  ||z  t          ||z
   |z            z  t          |	|z
  |z            dz
  z  z   z  }t          d||k     f|t          ||k    ||	k               f||	|k    f          }t           | |          |          }t          | | |          z  gg          }||                    ||          dz  z  |                    |j	        |j
                                      ||          z  }t          |d         |d|f          }|J d S )NZ0zk01 k10 t sT)r   rb   S   d   r   2   g333333?rC   x   r1   r   r?   )r   r   r&   r   r	   r   r%   r   r   lhsrhsr.   )r   k01k10r   sm_83r   bcder/   r   AIF_btfAIF_atfAIF_symaif_eqf_vec	integrandsolutions                        r8   test_issue_15498r   w  s   	$BMtDDDNCacT!VA
2s

C #sBQ<Q1aAq1a#Ahqj//)*QqS!cAE(1*oo2E-FFGG1S1q5!__$c1q5!)nnq&8 
aCa!eHQJa!eQY!!345 6GAE
Wc!q&!a%.@.@$AGQRSVCTUUG1wFSAYK=!!E!&&A,,""5::fj&*#E#E#J#J1a#P#PPI11ay11Hr7   N)csympy.concrete.summationsr   sympy.core.addr   sympy.core.functionr   r   r   sympy.core.numbersr   r	   r
   sympy.core.relationalr   r   sympy.core.symbolr   r   &sympy.functions.elementary.exponentialr   r   r   %sympy.functions.elementary.hyperbolicr   r   r   r   (sympy.functions.elementary.miscellaneousr   $sympy.functions.elementary.piecewiser   (sympy.functions.elementary.trigonometricr   r   r   r   r   r   sympy.functions.special.besselr   r    r!   r"   'sympy.functions.special.error_functionsr#   sympy.integrals.integralsr$   sympy.logic.boolalgr%   sympy.matricesr&   sympy.simplify.ratsimpr'   sympy.simplify.simplifyr(   sympy.integrals.heurischr)   r*   r+   sympy.testing.pytestr,   r-   r.   r4   r5   rQ   r   r/   r9   r=   rA   rE   rL   rO   rT   rY   r\   r_   rd   rf   ri   rk   rq   rs   rv   rx   rz   r   r   r   r   r   r   r   r   r   r   r   r   r6   r7   r8   <module>r      s3   ) ) ) ) ) )       < < < < < < < < < < 0 0 0 0 0 0 0 0 0 0 ( ( ( ( ( ( ( ( / / / / / / / / G G G G G G G G G G K K K K K K K K K K K K 9 9 9 9 9 9 : : : : : : V V V V V V V V V V V V V V V V J J J J J J J J J J J J 7 7 7 7 7 7 . . . . . . # # # # # # ! ! ! ! ! ! * * * * * * , , , , , , K K K K K K K K K K , , , , , , , , / / / / / /gj!!1aHSMM< < <&H H H; ; ;) ) ). . ."K K K; ; ;(7 7 7BP P P\ \ \
# # #"D D D
L L LJ J J9 9 90% % % 	- 	- 	-' ' '@ @ @7 7 7   ( ( (( ( (    " 	 	 	  5 5 5"  
; 
; 
;         r7   