�
��g�/ � �& � d Z ddlmZ ddlmZ ddlmZ ddlmZ ddl m
Z
ddlmZm
Z
mZmZmZ ddlmZmZmZmZmZmZmZmZmZ dd lmZ dd�Zej d
fd�Zej d
fd
�Z ej d
fd�Z!ej d
fd�Z"ej d
fd�Z#ej d
fd�Z$d
S )af
Singularities
=============
This module implements algorithms for finding singularities for a function
and identifying types of functions.
The differential calculus methods in this module include methods to identify
the following function types in the given ``Interval``:
- Increasing
- Strictly Increasing
- Decreasing
- Strictly Decreasing
- Monotonic
� )�Pow)�S)�Symbol)�sympify)�log)�sec�csc�cot�tan�cos) �sech�csch�coth�tanh�cosh�asech�acsch�atanh�acoth)�
filldedentNc �v � ddl m} |�|j rt j nt j } t j }| � t t t t gt � � }|� t t t t gt"