← Back to context

Comment by westurner

5 years ago

### LaTeX

  $$ \log_{b} x = (b^? = x) $$
  $$ 2^3 = 8 $$
  $$ \log_{2} 8 = 3 $$
  $$ \ln e = 1 $$
  $$ \log_b(xy)=\log_b(x)+\log_b(y) $$

  $ \begin{align}
  \textit{(1) } \log_b(xy) & = \log_b(x)+\log_b(y)
  \end{align} $

Sources: https://en.wikipedia.org/w/index.php?title=List_of_logarithm... ,

#### sympy2latex

What e.g. sympy2latex parses that LaTeX into, in terms of symbolic objects in an expression tree:

  # install
  #!python -m pip install antlr4-python3-runtime sympy
  #!mamba install -y -q antlr-python-runtime sympy
  
  import sympy
  from sympy.parsing.latex import parse_latex
  
  def displaylatexexpr(latex):
      expr = parse_latex(latex)
      display(str(expr))
      display(expr)
      return expr
    
  displaylatexexpr('\log_{2} 8'))
  # 'log(8, 2)'
  displaylatexexpr('\log_{2} 8 = 3'))
  # 'Eq(log(8, 2), 3)'
  displaylatexexpr('\log_b(xy) = \log_b(x)+\log_b(y)'))
  # 'Eq(log(x*y, b), log(x, b) + log(y, b))'
  displaylatexexpr('\log_{b} (xy) = \log_{b}(x)+\log_{b}(y)')
  # 'Eq(log(x*y, b), log(x, b) + log(y, b))'
  displaylatexexpr('\log_{2} (xy) = \log_{2}(x)+\log_{2}(y)')
  # 'Eq(log(x*y, 2), log(x, 2) + log(y, 2))'

### python standard library

https://docs.python.org/3/library/operator.html#operator.pow

https://docs.python.org/3/library/math.html#power-and-logari...

math. exp(x), expm1(), log(x, base=e), log1p(x), log2(x), log10(x), pow(x, y) : float, assert sqrt() == pow(x, 1/2)

## scipy

https://docs.scipy.org/doc/scipy/reference/generated/scipy.s... scipy.special. xlog1py()

https://docs.scipy.org/doc/scipy/reference/generated/scipy.s...

### sagemath

https://doc.sagemath.org/html/en/reference/functions/sage/fu...

### statsmodels

### TensorFlow https://www.tensorflow.org/api_docs/python/tf/math tf.math. log(), log1P(), log_sigmoid(), exp(), expm1()

https://keras.io/api/layers/activations/

SmoothReLU ("softplus") adds ln to the ReLU activation function, for example: https://en.wikipedia.org/wiki/Rectifier_(neural_networks)#So...

E.g. Softmax & LogSumExp also include natural logarithms in their definitions: https://en.wikipedia.org/wiki/Softmax_function

### PyTorch

https://pytorch.org/docs/stable/generated/torch.log.html torch. log(), log10(), log1p(), log2(), exp(), exp2(), expm1(); logaddexp() , logaddexp2(), logsumexp(), torch.special.xlog1py()

***

Regarding this learning process and these tools, Now I have a few replies to myself (!) in not-quite-markdown and with various headings: I should consolidate this information into a [MyST] markdown Jupyter Notebook and re-lead the whole thing. If this was decent markdown from the start, I'd have less markup work to do to create a ScholarlyArticle / Notebook.