Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

sage.tensor.modules: Add backends using TensorFlow Core, PyTorch, SymPy #30096

Open
mkoeppe opened this issue Jul 9, 2020 · 4 comments
Open

Comments

@mkoeppe
Copy link
Member

mkoeppe commented Jul 9, 2020

Tensors from sage.tensor are stored as sage.tensor.modules.Components, which is a dictionary with index tuples as keys.

We propose to create additional backends for numerical coordinate rings:

They provide efficient storage and GPU-accelerated computations for numerical tensors.

For SymPy, see #31946

CC: @egourgoulhon

Component: linear algebra

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

@mkoeppe mkoeppe added this to the sage-9.2 milestone Jul 9, 2020
@mkoeppe mkoeppe modified the milestones: sage-9.2, sage-9.3 Aug 13, 2020
@mkoeppe
Copy link
Member Author

mkoeppe commented Feb 13, 2021

comment:2

Setting new milestone based on a cursory review of ticket status, priority, and last modification date.

@mkoeppe mkoeppe modified the milestones: sage-9.3, sage-9.4 Feb 13, 2021
@mkoeppe

This comment has been minimized.

@mkoeppe mkoeppe changed the title sage.tensor.modules: Add backends using TensorFlow Core and PyTorch sage.tensor.modules: Add backends using TensorFlow Core, PyTorch, SymPy Jun 10, 2021
@mkoeppe mkoeppe modified the milestones: sage-9.4, sage-9.5 Jul 19, 2021
@mkoeppe mkoeppe modified the milestones: sage-9.5, sage-9.6 Dec 14, 2021
@mkoeppe mkoeppe modified the milestones: sage-9.6, sage-9.7 Mar 5, 2022
@mkoeppe mkoeppe modified the milestones: sage-9.7, sage-9.8 Aug 31, 2022
@mkoeppe mkoeppe modified the milestones: sage-9.8, sage-9.9 Jan 7, 2023
@mkoeppe mkoeppe removed this from the sage-10.0 milestone Mar 16, 2023
@hyperactivecoder
Copy link

hyperactivecoder commented Mar 15, 2024

@mkoeppe, can you please let us know more about this?
Do we just have to implement all the function in Component class in Pytorch / Tensorflow?
What i am understanding is we have to impliment symbolic expressions in tensors, am i mistaken?

@mkoeppe
Copy link
Member Author

mkoeppe commented Mar 15, 2024

The tensors in Sage can be defined with different element types (this is what is called a "base ring" in Sage).

When talking about using Pytorch or Tensorflow as the backend, the most natural thing to consider is the element type being a floating-point number of some precision / format.

When talking about SymPy as the backend, the most natural thing to consider is symbolic expressions.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants