Metadata-Version: 2.1
Name: fancy-einsum
Version: 0.0.3
Summary: Drop-in replacement for torch/numpy einsum, with descriptive variable names in equations
Home-page: https://github.com/Kiv/fancy_einsum
Author: Chris MacLeod
Author-email: chrism6794@gmail.com
License: MIT
Project-URL: Bug Tracker, https://github.com/Kiv/fancy_einsum/issues
Platform: UNKNOWN
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Requires-Python: >=3.6
Description-Content-Type: text/markdown
License-File: LICENSE

# Fancy Einsum

This is a simple wrapper around `np.einsum` and `torch.einsum` that allows the use of self-documenting variable names instead of just single letters in the equations. Inspired by the syntax in [einops](https://github.com/arogozhnikov/einops).

For example, instead of writing:

```python
import torch
torch.einsum('bct,bcs->bcts', a, b)
```

or 

```python
import numpy as np
np.einsum('bct,bcs->bcts', a, b)
```

With this library you can write:

```python
from fancy_einsum import einsum
einsum('batch channels time1, batch channels time2 -> batch channels time1 time2', a, b)
```

