def is_increasing(f, interval=S.Reals, symbol=None):
 f = sympify(f)
 free_sym = f.free_symbols
 if (symbol is None):
  if (len(free_sym) > 1):
   raise NotImplementedError('is_increasing has not yet been implemented for all multivariate expressions')
  if (len(free_sym) == 0):
   return True
  symbol = free_sym.pop()
 df = f.diff(symbol)
 df_nonneg_interval = solveset((df >= 0), symbol, domain=S.Reals)
 return interval.is_subset(df_nonneg_interval)

def is_increasing ( f , interval = S . Reals , symbol = None ) : f = sympify ( f ) free_sym = f . free_symbols if ( symbol is None ) : if ( len ( free_sym ) > 1 ) : raise NotImplementedError ( 'is_increasing has not yet been implemented for all multivariate expressions' ) if ( len ( free_sym ) == 0 ) : return True symbol = free_sym . pop ( ) df = f . diff ( symbol ) df_nonneg_interval = solveset ( ( df >= 0 ) , symbol , domain = S . Reals ) return interval . is_subset ( df_nonneg_interval )
returns if a function is increasing or not .