-
Notifications
You must be signed in to change notification settings - Fork 57
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
Literals get contracted as if they were symbols #113
Comments
This used to be on the package README but I guess it moved to the docs when I created a more extensive documentation (which has grown a bit out of date): The point is that in my field, there is a very convenient notation for contracting several tensors, where we use integer labels to denote which indices need to be contracted, in such a way that the value of the integer indicates the order in which the pairwise different contractions will happen. For example, if you want to multiply two matrices and a vector, you could write this as Note that you can still obtain your intended behaviour as
or
I agree that is less pleasing for your use case, but changing to not adhere the NCON convention when it is being used is not really an option. What could be considered is a style where |
I see. Yes it would be nice to mention in the Readme somewhere that it follows the ncon convention rather than the "usual" Einstein summation (eg the one in numpy). Especially, I came to this package from the EinSum.jl package, expecting more or less a blas-dispatching version of EinSum. |
This is hugely surprising to me. I guess if constants are not supported (#111) erroring would be better than contracting here.
The text was updated successfully, but these errors were encountered: