the `/`character cannot be part of a symbol's name (not acepted by the Python interpreter). Try :
``` sage: logr = SR.symbol("logr", latex_name='L_{x/x_0}') sage: x*logr logr*x sage: latex(x*logr) L_{x/x_0} x ``` BTW (question of taste...), I'd rather use `logr = SR.symbol("logr", latex_name=r'L_{\frac{x}{x_0}}')`... HTH, Le lundi 4 juillet 2022 à 23:22:53 UTC+2, Markk a écrit : > sage: x = SR.symbol('x') > ....: x_0 = SR.symbol('x_0') > ....: logr = SR.symbol('L_x/x_0') > ....: logr_ex = logr == log(x/x_0) > ....: latex(logr_ex) > ....: latex(logr_ex.solve(x)[0]) > L_{\mathit{x/x}_{0}} = \log\left(\frac{x}{x_{0}}\right) > x = x_{0} e^{\frac{L_{x}}{x_{0}}} > > The above attempt at using a symbol with a fraction in the subscript works > (see first latex() result) until after an operation like solve(), which > scrambles the symbol (second latex() result). > > Variations of logr = SR.symbol('L_{x/x}_0') with braces also work until an > operation such as logr_ex.solve(x) with the code above, which crash Maxima > with the traceback excerpts: > --------------------------------------------------------------------------- > RuntimeError Traceback (most recent call last) > /usr/lib/python3/dist-packages/sage/interfaces/interface.py in > __init__(self, parent, value, is_name, name) > 731 try: > --> 732 self._name = parent._create(value, name=name) > 733 except (TypeError, RuntimeError, ValueError) as x: > ... > RuntimeError: ECL says: THROW: The catch MACSYMA-QUIT is undefined. > > During handling of the above exception, another exception > occurred:--------------------------------------------------------------------------- > RuntimeError Traceback (most recent call last) > /usr/lib/python3/dist-packages/sage/interfaces/interface.py in > __init__(self, parent, value, is_name, name) > 731 try: > --> 732 self._name = parent._create(value, name=name) > 733 except (TypeError, RuntimeError, ValueError) as x: > ... > /usr/lib/python3/dist-packages/sage/interfaces/interface.py in > __init__(self, parent, value, is_name, name) > 732 self._name = parent._create(value, name=name) > 733 except (TypeError, RuntimeError, ValueError) as x: > --> 734 raise TypeError(x) > 735 > 736 def _latex_(self): > > TypeError: ECL says: THROW: The catch MACSYMA-QUIT is undefined. > > Looks like a bug, but maybe I've overlooked the correct way to define such > symbols. > > -- You received this message because you are subscribed to the Google Groups "sage-devel" group. To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/sage-devel/ce3b555e-fcd2-419d-9fd7-b39421fa7ea8n%40googlegroups.com.