Tommy Hofmann
Tommy Hofmann
Let me repurpose this issue as a feature request to some better argument checking in the application of a morphisms. The feedback of the people coming in touch with Oscar...
this (the MWE of @lgoettgens) is expected, see https://nemocas.github.io/Nemo.jl/stable/developer/topics/#Aliasing-rules
This was added in https://github.com/Nemocas/Nemo.jl/issues/278, a time when there was no AA, but everything was part of Nemo. The documentation has not made it through the split very well. The...
> `setcoeff!` is used a total of 4 times in OSCAR and OSCAR also mainly relies on FLINT that is reason this remained undiscovered until now. By OSCAR we mean...
> That _is_ part of the rules (`Other objects, e.g. polynomials, series, etc., are constructed from objects that do not alias one another, even in part`) No, the written down...
> IMO there is not enough documentation to decide that. Is `shift_left` an arithmetic operation, even though it is not listed explicitly in https://nemocas.github.io/Nemo.jl/stable/developer/topics/#Arithmetic-operations-return-a-new-object ? I think there is enough...
I think there is a difference between writing generic code for `RingElement` and examples of the form ``` my_function(x::ZZRingElem) = x^2 ``` ``` function my_other_function(x::ZZRingElem) y = my_other_function(x) mul!(y, y,...
Sorry, I don't fully understand what the additional branch is supposed to do. Is there something missing at the moment?
I like the tests, since this application appears in the "real world".
Looks good. Also ``` julia> a = zero_matrix(QQ, 2, 3); julia> b = zero_matrix(ZZ, 3, 3); julia> a in [b, a] true ``` still works.