Skip to content

Allow keywords such as latex_name=LaTeX while defining symbolic function #6290

@golam-m-hossain

Description

@golam-m-hossain

In new symbolics, underlying "sage.symbolic.function.SFunction" class allows one to pass the keywords such as "latex_name=LaTeX". It would be really good if we expose this feature at the user interface level. This will directly allow LaTeX customization by users according to their need.

Currently, Sage (4.0.1) raises error if one tries to do so.

Couple of example usage:

(1) Define symbolic function with its latex representaion

riemann(x) = function('riemann', x, latex_name="\\mathcal{R}")
latex( riemann(x) )
\mathcal{R}\left(x\right)

(2) Printing arguments of a symbolic functions as its indices.

mu,nu = var('mu,nu')
def my_latex_print(*args): 
    return "\psi_{%s}"%(', '.join(map(latex, args)))

psi(mu,nu) = function('psi', mu,nu, print_latex_func=my_latex_print)

latex(psi(mu,nu))
\psi_{\mu, \nu}

Attached patch allows keyword arguments while defining symbolic functions.

CC: @williamstein

Component: symbolics

Keywords: latex_name, symbolic function

Author: Golam Mortuza Hossain

Reviewer: Nick Alexander

Merged: 4.1.alpha0

Issue created by migration from https://trac.sagemath.org/ticket/6290

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions