ó
¡¼™\c           @   sú   d  d l  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 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 „  Z d „  Z d	 „  Z d
 „  Z d „  Z d „  Z d „  Z d „  Z  d S(   iÿÿÿÿ(   t   sqrtt   pit   Et   exp(   t   St   Symbolt   symbolst   I(   t   range(   t   convolutiont   convolution_fftt   convolution_nttt   convolution_fwhtt   convolution_subsett   covering_productt   intersecting_product(   t   raises(   t   xt   yc              s®  d t  d ƒ d t d ƒ t  d ƒ d g ‰  d d d d d d g ‰ d d d d d g ‰ d	 d
 d d g ‰ t ˆ  ˆ ƒ t ˆ  ˆ ƒ k s t ‚ t ˆ  ˆ d d ƒt ˆ  ˆ d d ƒk s¿ t ‚ t ˆ  ˆ d d ƒt ˆ ˆ  d d ƒk sï t ‚ t ˆ  ˆ d d d ƒt ˆ d ˆ  d d ƒk s't ‚ d d d ‰ d d  d ‰ t ˆ ˆ d ˆ ƒt ˆ ˆ d ˆ ƒk sst ‚ t ˆ ˆ d ˆ ƒt ˆ ˆ d ˆ ƒk s£t ‚ t ˆ ˆ d ˆ ƒt ˆ ˆ d ˆ ƒk sÓt ‚ t t ‡ ‡ ‡ f d †  ƒ t t ‡ ‡ ‡ f d †  ƒ t ˆ  ˆ d t ƒt	 ˆ  ˆ ƒ k s5t ‚ t ˆ  ˆ d t
 ƒt ˆ  ˆ ƒ k s_t ‚ t t ‡ ‡ f d †  ƒ t t ‡ ‡ ‡ f d †  ƒ t t ‡  ‡ f d †  ƒ t t ‡ ‡ ‡ f d †  ƒ t ˆ  ˆ d t ƒt ˆ  ˆ ƒ k o't ˆ  ˆ d t d t
 ƒk o't ˆ  ˆ d t ƒk n s2t ‚ t ˆ  ˆ d t
 ƒt ˆ  ˆ ƒ k s\t ‚ t t ‡  ‡ f d †  ƒ t t ‡ ‡ f d †  ƒ t t ‡  ‡ ‡ f d †  ƒ d  S(!   Ni   i   i   i   i	   i   i   i   iŽ  i¬  i  i°  t   dpsi   i   i   i
   t   primec              s   t  ˆ  ˆ d d d ˆ ƒS(   NR   i   R   (   R	   (    (   t   bt   dt   q(    sE   lib/python2.7/site-packages/sympy/discrete/tests/test_convolutions.pyt   <lambda>   t    c              s   t  ˆ  ˆ d d d ˆ ƒS(   NR   i   R   (   R	   (    (   R   R   R   (    sE   lib/python2.7/site-packages/sympy/discrete/tests/test_convolutions.pyR       R   t   dyadicc              s   t  ˆ  ˆ d d d t ƒS(   NR   i   R   (   R	   t   True(    (   R   R   (    sE   lib/python2.7/site-packages/sympy/discrete/tests/test_convolutions.pyR   %   R   c              s   t  ˆ  ˆ d ˆ d t ƒS(   NR   R   (   R	   R   (    (   R   R   t   p(    sE   lib/python2.7/site-packages/sympy/discrete/tests/test_convolutions.pyR   &   R   c              s   t  ˆ  ˆ d d d t ƒS(   NR   i   R   (   R	   R   (    (   t   aR   (    sE   lib/python2.7/site-packages/sympy/discrete/tests/test_convolutions.pyR   '   R   c              s   t  ˆ  ˆ d ˆ d t ƒS(   NR   R   (   R	   R   (    (   R   t   cR   (    sE   lib/python2.7/site-packages/sympy/discrete/tests/test_convolutions.pyR   (   R   t   subsetc              s   t  ˆ  ˆ d t d t ƒS(   NR   R   (   R	   R   (    (   R   R   (    sE   lib/python2.7/site-packages/sympy/discrete/tests/test_convolutions.pyR   /   R   c              s   t  ˆ  ˆ d t d d ƒS(   NR   R   i   (   R	   R   (    (   R   R   (    sE   lib/python2.7/site-packages/sympy/discrete/tests/test_convolutions.pyR   0   R   c              s   t  ˆ  ˆ d t d ˆ ƒS(   NR   R   (   R	   R   (    (   R   R   R   (    sE   lib/python2.7/site-packages/sympy/discrete/tests/test_convolutions.pyR   1   R   iw   i  € i   (   R   R    R	   R
   t   AssertionErrorR   R   t	   TypeErrorR   R   t   FalseR   (    (    (   R   R   R   R   R   R   sE   lib/python2.7/site-packages/sympy/discrete/tests/test_convolutions.pyt   test_convolution
   s8    ,$008000**& #*c       	   C   sÛ  d t  d ƒ d t d ƒ t  d ƒ d g }  d d d d d d g } t d d d g d d d g d	 d
 ƒt d d d g d d d g d	 d ƒk o¸ t d d d g d d d g ƒ k n sÃ t ‚ t d d d g d d d g d	 d ƒd d d g k sÿ t ‚ t  d ƒ d t  d ƒ d t  d ƒ d t  d ƒ d t  d ƒ d g }  t  d ƒ d t  d ƒ d t  d ƒ d t  d ƒ d g } t |  | d	 d
 ƒt |  | d	 t |  ƒ t | ƒ d ƒk sÄt ‚ t |  | d	 d ƒt  d ƒ d t  d ƒ d t  d ƒ d t  d ƒ d g k st ‚ t |  | d	 d ƒt  d ƒ d t  d ƒ d t  d ƒ d t  d ƒ d t  d ƒ d t  d ƒ d  g k sˆt ‚ t |  | d	 d ƒt |  | d	 d
 ƒt  j g k sÂt ‚ d! d" t  d# ƒ d$ d% g }  t  d& ƒ d' d( d) g } t |  | d* d+ dO d d	 d
 ƒt |  | d* d+ dP d d	 d ƒk o]t |  | d* d+ dQ d ƒk n sht ‚ t |  | d* d+ dR d d	 d ƒd- d. d/ d0 d1 g k s¦t ‚ t |  | d* d+ dS d d	 d ƒd2 d3 d4 d0 d1 d5 d6 g k sêt ‚ t |  | d* d+ dT d d	 d ƒt |  | d* d+ dU d ƒd
 g k s7t ‚ t d7 ƒ \ } } } } } t d8 ƒ \ } } }	 }
 } | | | | | g } | | |	 |
 | g } t |  | d9 t d	 d ƒd: d; d< g k sÇt ‚ t |  | d9 t d	 d ƒd= d> d? d@ dA g k sýt ‚ t | | d9 t d	 d ƒ| | | | | | |	 | |
 | | | | | | | | | | | |	 | |
 | | | | | | | |	 | |	 | |
 | | | | | | | |	 | |
 | |
 | | | g k sèt ‚ t | | d9 t d	 d ƒ| | | | |	 | |	 | |
 | | | | | | | | | |	 | |
 | |
 | | | | | | | |	 | |
 | | | | | |	 | |
 | | | | | | | | | g k sÑt ‚ t |  | dB t d	 d ƒdC dD dE d@ dA dF dG g k st ‚ t |  d | dB t d	 d ƒdH dI dJ dK g k sDt ‚ t |  | dL  dB t d	 d ƒdM dD dE dN dA dF g k st ‚ t | | dB t d	 d ƒ| | | | | | |	 | |	 | |
 | | | | | | | | | |
 | | | | | | | | | |	 | | | g k s-t ‚ t | | dB t d	 d ƒ| | | | | | | | | | |	 | | | | | |	 | |
 | | | | | | | |	 | |
 | | | | | g k s×t ‚ d  S(V   Ni   i   i   i   i	   i   i   i   t   cyclei    i   i   i   iíT i\g  i9w  iL,  iu+  iÀ  iE  i8  iÑN  iÀN  i¤  i;  i/   i   ií  i@  i¬  iÁ	  iÜ  i		  i;Q i   iž¤  iu‘„i°‚  iµÝ  iº²  i'™ R   i   i
   i`   iúB  ih
  i®<  i½  i#  i‚  iì  iº?  ix5  s	   u v w x ys	   p q r s tR   I×P#÷E  I\ÃX  IÍÏF  I·ªQÞx  IËäWGì  IçÊ"œµ  I×u©P9   IpjI  R   IÞ{
  IØ§)   iŠÀÀI¹ØL9.  I	uÂ  I@°Ôw)   I|	Ú_F   IX§
9   I:ËTŸa  iÿÿÿÿI2ÑÂ  Ix´9   i   i   i   i   i   i   i   (   R   R    R	   R    t   lent   ZeroR   R   (   R   R   t   ut   vt   wR   R   R   R   t   rt   st   tR   R   (    (    sE   lib/python2.7/site-packages/sympy/discrete/tests/test_convolutions.pyt   test_cyclic_convolution5   s€    ,$,/<G:2,)96( (+)) -7//>7/7/.c           C   s  t  d „  g  d g f Dƒ ƒ s% t ‚ t d d d g d d d g ƒ d d d	 d
 d g k sa t ‚ t d g d d d g ƒ d d d g k s‘ t ‚ t d d g d d d g ƒ d d d d g k sÇ t ‚ t d d t g d d t g ƒ d d t g k st ‚ t d d t d d t d t d ƒ d t g t d ƒ d t d ƒ d t g ƒ t d ƒ d d t d t d ƒ d d t d t d ƒ d d t d g k sµt ‚ t t d ƒ d t d ƒ d g t d ƒ d t d ƒ d t d ƒ d g ƒ t d ƒ d t d ƒ d t d ƒ d t d ƒ d g k sEt ‚ t t d ƒ d t d ƒ d t d ƒ d g t d ƒ d t d ƒ d t d ƒ d g ƒ t d ƒ d t d ƒ d t d ƒ d t d  ƒ d! t d ƒ d" g k sït ‚ t t t t d ƒ g t d ƒ d t d t g ƒ t d ƒ t d t d ƒ t t t t t d# ƒ t d ƒ t d ƒ t d t d ƒ t d# ƒ g k s‘t ‚ t d$ d% g d& d' d( g ƒ d) d* d+ d, g k sÇt ‚ t d- d. g d/ d0 g ƒ d1 d2 d3 g k s÷t ‚ t	 t
 d4 „  ƒ t	 t d5 „  ƒ d  S(6   Nc         s   s7   |  ]- } d D]  } t g  | d | ƒg  k Vq q d S(   i   R   N(   Ni   (   t   NoneR
   (   t   .0R   R   (    (    sE   lib/python2.7/site-packages/sympy/discrete/tests/test_convolutions.pys	   <genexpr>“   s    i   i   i   i   i   i   i   i   i   i   i   i   i   iüÿÿÿi   i#   i0   i&   it   i:   i  i¯   i   i    i/   i-   i	   i   iØ  i_7  i  i±  i   iÿÿÿÿi	  ic  iÉ  i±  i› iYr¼ i|/ai¾°XIñØÏŒ    iùÃ i˜DÝioiêià I÷!	  Iÿm
a’ IèPþ¸	  c           S   s   t  t t ƒ S(   N(   R
   R   R   (    (    (    sE   lib/python2.7/site-packages/sympy/discrete/tests/test_convolutions.pyR   ¬   R   c           S   s   t  t t g t t g ƒ S(   N(   R
   R   R   (    (    (    sE   lib/python2.7/site-packages/sympy/discrete/tests/test_convolutions.pyR   ­   R   (   t   allR    R
   R   R   R   R   R    R   R   R!   t
   ValueError(    (    (    sE   lib/python2.7/site-packages/sympy/discrete/tests/test_convolutions.pyt   test_convolution_fft’   s(    %<06<V\MCZP2=3c             sO  d5 d6 d ‰  d d7 d ‰ d9 ‰ d< }  t  ‡  ‡ ‡ f d †  g  d g f Dƒ ƒ sY t ‚ t d g d	 g ˆ ƒ d g k s€ t ‚ t d d	 g d g ˆ ƒ d d g k s­ t ‚ t d d d d g d d d g ˆ  ƒ d d d d d d g k sò t ‚ t d d d d g d  d! d" d# g ˆ ƒ d$ d% d& d' d( d) d* g k s=t ‚ t d d d+ d, d- g d d d d d. g ˆ  ƒ t d d d+ d, d- g d d d d d. g ˆ ƒ k s£t ‚ t d d d+ d, d- g d+ d/ d d0 d1 g ˆ  ƒ t d d d+ d, d- g d+ d/ d d0 d1 g ˆ ƒ k s	t ‚ t t ‡ f d2 †  ƒ t t ‡ f d3 †  ƒ t t ‡  f d4 †  ƒ d  S(=   Ni   i   i   i   i   i   i
   ieÍi   i   c         3   s@   |  ]6 } ˆ  ˆ ˆ f D]  } t  g  | d  | ƒg  k Vq q d S(   R   N(   R   (   R/   R   R   (   R   R   R*   (    sE   lib/python2.7/site-packages/sympy/discrete/tests/test_convolutions.pys	   <genexpr>¸   s    i   i   i   i   iy}  i ¤  iv  i‘  i„}  i   iÊT icÇigiO4¸iÁ•1i¼Ûºij¦i9Ü i÷e0 i“æiÚE  i,S  iát  i8  iÞ  iù  ib  i²  i×  i¸  i   i   ib   iC   i	   iL   iN   iE   c              s   t  d d g d d g ˆ  ƒ S(   Ni   i   i   i   (   R   (    (   R*   (    sE   lib/python2.7/site-packages/sympy/discrete/tests/test_convolutions.pyR   Æ   R   c              s   t  t t g t t g ˆ  ƒ S(   N(   R   R   R   (    (   R   (    sE   lib/python2.7/site-packages/sympy/discrete/tests/test_convolutions.pyR   Ç   R   c              s   t  t t ˆ  ƒ S(   N(   R   R   R   (    (   R   (    sE   lib/python2.7/site-packages/sympy/discrete/tests/test_convolutions.pyR   È   R   iw   i  € i   iÊš;iÊš;i   i   iÒ   (   R0   R    R   R   R1   R!   (   R+   (    (   R   R   R*   sE   lib/python2.7/site-packages/sympy/discrete/tests/test_convolutions.pyt   test_convolution_ntt°   s$    1'-''$-9-9c             s8  t  g  g  ƒ g  k s t ‚ t  g  d g ƒ g  k s9 t ‚ t  d d d g d d d g ƒ d d d	 d
 g k sr t ‚ t  t d ƒ d t d ƒ d t d ƒ d g d d t d ƒ d g ƒ t d ƒ d t d ƒ d t d ƒ d t d ƒ d g k sû t ‚ d t d ƒ d t d ƒ t d ƒ d d d t g }  d d d d d d
 d g } d d t d d t d t d ƒ d d g } t  |  | ƒ d t d ƒ d d t d t d ƒ t d ƒ d d t d t d ƒ t d ƒ d d t d t d ƒ t d ƒ d d t d ƒ d  d! t t d" ƒ d d# t d t d ƒ t d$ ƒ d d% t d
 t d ƒ t d& ƒ d d' t g k s…t ‚ t  | | ƒ d( t d ƒ d) t d* t d ƒ d+ t d, t d ƒ d- t d. t d ƒ d/ t d0 d1 t d2 t d ƒ d3 t d4 t d ƒ d5 t d6 t d ƒ d7 t g k s>t ‚ t  |  d | ƒ t d8 ƒ d d9 t d d: d; t d d< t d ƒ d= t d d> t d? ƒ d t d@ t d ƒ d dA t dB dB g k sÒt ‚ t dC ƒ \ ‰  ‰ } ‰ ‰ } t  ˆ  ˆ g ˆ ˆ g ƒ ˆ  ˆ ˆ ˆ ˆ  ˆ ˆ ˆ g k s5t ‚ t  ˆ  ˆ | g ˆ ˆ g ƒ ˆ  ˆ ˆ ˆ ˆ  ˆ ˆ ˆ | ˆ | ˆ g k s‹t ‚ t  ˆ  ˆ | g ˆ ˆ | g ƒ ˆ  ˆ ˆ ˆ | | ˆ  ˆ ˆ ˆ ˆ  | | ˆ ˆ | | ˆ g k süt ‚ t t ‡ ‡ f dD †  ƒ t t ‡  ‡ ‡ ‡ f dE †  ƒ d  S(F   Ni   i   i   i   i   i   i    i   i   i   i   i   i-   i=   i   i  i“   i£  i*   i^   i3   i5   i   in  i›   iØ  i   i‡   ié  iA   i†  iÄ  iÖ  i¡  iÿ   i"  i	  i\  iá   iÉ  iÝ  iG  i^  i{  i  iÄ  i'  iû  i9  is  iE  i—  i4   iµ  i[   i6   i%  iÿÿÿÿiÌ   i…   i#   i™  i   i8   i(   i    s   u v w x y zc              s   t  ˆ  ˆ ƒ S(   N(   R   (    (   R   R   (    sE   lib/python2.7/site-packages/sympy/discrete/tests/test_convolutions.pyR   ñ   R   c              s   t  ˆ ˆ ˆ  ˆ ƒ S(   N(   R   (    (   R'   R(   R   R   (    sE   lib/python2.7/site-packages/sympy/discrete/tests/test_convolutions.pyR   ò   R   (   R   R    R   R    R   R   R   R!   (   R   R   R   R)   t   z(    (   R'   R(   R   R   sE   lib/python2.7/site-packages/sympy/discrete/tests/test_convolutions.pyt   test_convolution_fwhtË   s:    9FC7/%###26J99[E;Sc             s-  t  g  g  ƒ g  k s t ‚ t  g  t d ƒ d g ƒ g  k sC t ‚ t  d d t d g t d ƒ d g ƒ d d t d g k s‰ t ‚ d t d ƒ d t d ƒ d d t g }  d d	 d
 d d d d g } d d t d d d t d t d ƒ d d g } t  |  | ƒ d d t d ƒ d
 d t d ƒ d	 t d ƒ d t d ƒ d t d d d d t d ƒ d t d ƒ d d t g k st ‚ t  | | ƒ d d t d d d t d d d t d t d ƒ d d t d d d t d d  t d d! d" t t d# ƒ d d$ t g k s+t ‚ t  |  | ƒ t  | |  ƒ k sOt ‚ t  |  d  | ƒ d d t d ƒ d
 d% t d ƒ d d d d& g k sšt ‚ t  |  d  | ƒ d d t d d" d' t d d d( t d ƒ d d d) d) g k sót ‚ t d* ƒ \ ‰  } } ‰ } ‰ t  ˆ  | | g ˆ | g ƒ ˆ  ˆ ˆ  | | ˆ | ˆ | | g k s_t ‚ t  ˆ  | | ˆ g | ˆ g ƒ ˆ  | ˆ  ˆ | | | | | ˆ ˆ | g k s¸t ‚ t  ˆ  | g ˆ | ˆ g ƒ t  ˆ | ˆ g ˆ  | g ƒ k sút ‚ t t ‡ ‡ f d+ †  ƒ t t ‡  f d, †  ƒ d  S(-   Ni   i   i   i   i   i   i   i@   iG   i7   i/   i!   i   i   i	   i  i   i@  iT   i   i¥   iÀ   i€   iÎ  ie  in   i•  iá  i£  i   i{  iï  i  i
   i˜  ii   i   i   iI   iÄ   i    s   u v w x y zc              s   t  ˆ  ˆ ƒ S(   N(   R   (    (   R   R4   (    sE   lib/python2.7/site-packages/sympy/discrete/tests/test_convolutions.pyR     R   c              s   t  t d ƒ d ˆ  ƒ S(   Ni   i   (   R   R   (    (   R'   (    sE   lib/python2.7/site-packages/sympy/discrete/tests/test_convolutions.pyR     R   (   R   R    R   R   R    R   R   R!   (   R   R   R   R(   R)   R   (    (   R'   R   R4   sE   lib/python2.7/site-packages/sympy/discrete/tests/test_convolutions.pyt   test_convolution_subsetõ   s4    (F*3-)9*(/$;IN;'c             së  t  g  g  ƒ g  k s t ‚ t  g  t d ƒ d g ƒ g  k sC t ‚ t  d d t d g t d ƒ d g ƒ d d t d g k s‰ t ‚ d t d ƒ d t d ƒ d d	 t g }  d
 d d d d d d g } d d t d d d t d t d ƒ d d g } t  |  | ƒ d
 t d ƒ d d d t d ƒ d t d ƒ d d t d t d ƒ d d d t d ƒ d t d ƒ t d ƒ d d t g k sšt ‚ t  | | ƒ d d t d  d! t d" d# t d t d$ ƒ d d% t d d& d' t d d( d) t d d* d+ t d t d, ƒ d d- t g k s5t ‚ t  |  | ƒ t  | |  ƒ k sYt ‚ t  | | d.  ƒ d d t d  d! t d" d# t d t d$ ƒ d d% t d d/ d' t d d0 d) t d d1 d+ t d t d2 ƒ d d- t g k søt ‚ t  |  | d.  ƒ d d t d t d3 ƒ d d4 t d5 d d6 t d ƒ d t d ƒ t d d7 d8 t d ƒ d d t d ƒ t d9 t d g k s™t ‚ t d: ƒ \ ‰  } } ‰ } ‰ t  ˆ  | | g ˆ | g ƒ ˆ  ˆ ˆ  | | ˆ | | | ˆ | | g k st ‚ t  ˆ  | | ˆ g | ˆ g ƒ ˆ  | ˆ  ˆ | | | ˆ | | | ˆ ˆ | ˆ ˆ g k svt ‚ t  ˆ  | g ˆ | ˆ g ƒ t  ˆ | ˆ g ˆ  | g ƒ k s¸t ‚ t t ‡ ‡ f d; †  ƒ t t ‡  f d< †  ƒ d  S(=   Ni   i   i   i   i   i   i   i   i	   iB   iQ   i_   i1   i%   iY   i   i3   iH   i   i[   ig  i¡   i‚   i  i;
  iŸ  i6   i5  i  iÆ   i,   i<  iŽ)  i„  i¾   i¼¦  iây  i%  iJ   i“V  ik  i})  i"   i|` iÈ  iÿÿÿÿio   i%  i­  i7[  iS  i  i   i
   imþÿÿi  ir1  s   u v w x y zc              s   t  ˆ  ˆ ƒ S(   N(   R   (    (   R   R4   (    sE   lib/python2.7/site-packages/sympy/discrete/tests/test_convolutions.pyR   C  R   c              s   t  t d ƒ d ˆ  ƒ S(   Ni   i   (   R   R   (    (   R'   (    sE   lib/python2.7/site-packages/sympy/discrete/tests/test_convolutions.pyR   D  R   (   R   R    R   R   R    R   R   R!   (   R   R   R   R(   R)   R   (    (   R'   R   R4   sE   lib/python2.7/site-packages/sympy/discrete/tests/test_convolutions.pyt   test_covering_product  s>    (F*3-2"(3$&(3@B;K'c       	      s—  t  g  g  ƒ g  k s t ‚ t  g  t d ƒ d g ƒ g  k sC t ‚ t  d d t d g t d ƒ d g ƒ d d t d g k s‰ t ‚ d t d ƒ t d ƒ d d t d d t g }  d	 d
 d d d d d g } d d t d d d t d t d ƒ d d g } t  |  | ƒ d t d ƒ d t d ƒ d t d t d ƒ d d t d t d ƒ d t d d t d d d d g k sŒt ‚ t  | | ƒ d t d ƒ d t d t d  ƒ d d! t t d" ƒ d t d ƒ d d# d d d g k sût ‚ t  |  | ƒ t  | |  ƒ k st ‚ t  | d | d$  ƒ d% t d ƒ d& t d d' t d ƒ d( t d) t d ƒ d* t d ƒ d d d d g k s–t ‚ t  |  | d+  ƒ d, t d ƒ d- t d ƒ d t d ƒ t d d. t d/ d0 d t d ƒ d t d ƒ t d1 t d2 t d ƒ d3 t d g k s5t ‚ t d4 ƒ \ ‰  } } ‰ } ‰ t  ˆ  | | g ˆ | g ƒ ˆ  ˆ ˆ  | | ˆ | ˆ | | | | d d g k s±t ‚ t  ˆ  | | ˆ g | ˆ g ƒ ˆ  | ˆ  ˆ | | | | | ˆ ˆ | | ˆ ˆ ˆ d d g k s"t ‚ t  ˆ  | g ˆ | ˆ g ƒ t  ˆ | ˆ g ˆ  | g ƒ k sdt ‚ t t ‡ ‡ f d5 †  ƒ t t ‡  f d6 †  ƒ d  S(7   Ni   i   i   i   i   i   i   i   iC   i3   iA   i0   i$   iO   i   i	   i   i   iÃ   iC  i^  i²   i  iŽ  iI  i@  iÀ   iP  i    i)ö i1%  iœE  iB  i@K  i6  iÿÿÿÿiý  i®!  i2  i€  iô,  iü   iþÿÿÿiÿÿÿi
   iÍ  i(   iÕÿÿÿiG   iõ   iT   s   u v w x y zc              s   t  ˆ  ˆ ƒ S(   N(   R   (    (   R   R4   (    sE   lib/python2.7/site-packages/sympy/discrete/tests/test_convolutions.pyR   j  R   c              s   t  ˆ  t d ƒ d ƒ S(   Ni   i   (   R   R   (    (   R'   (    sE   lib/python2.7/site-packages/sympy/discrete/tests/test_convolutions.pyR   k  R   (   R   R    R   R   R    R   R   R!   (   R   R   R   R(   R)   R   (    (   R'   R   R4   sE   lib/python2.7/site-packages/sympy/discrete/tests/test_convolutions.pyt   test_intersecting_productG  s4    (F23/.&%J$-J=RCS'N(!   t   sympyR    R   R   R   t
   sympy.coreR   R   R   R   t   sympy.core.compatibilityR   t   sympy.discrete.convolutionsR	   R
   R   R   R   R   R   t   sympy.utilities.pytestR   t	   sympy.abcR   R   R#   R-   R2   R3   R5   R6   R7   R8   (    (    (    sE   lib/python2.7/site-packages/sympy/discrete/tests/test_convolutions.pyt   <module>   s   ""4	+	]			*	&	,