mirror of
https://github.com/kalmarek/GroupRings.jl.git
synced 2025-01-01 11:45:28 +01:00
Revert "add mul! and addeq! for MatrixSpace construction"
This reverts commit 5fb131c390
.
This commit is contained in:
parent
56a0964f30
commit
63b4a0594f
@ -1,7 +1,7 @@
|
|||||||
module GroupRings
|
module GroupRings
|
||||||
|
|
||||||
using Nemo
|
using Nemo
|
||||||
import Nemo: Group, GroupElem, Ring, RingElem, parent, elem_type, parent_type, mul!, addeq!
|
import Nemo: Group, GroupElem, Ring, RingElem, parent, elem_type, parent_type
|
||||||
|
|
||||||
import Base: convert, show, hash, ==, +, -, *, //, /, length, norm, rationalize, deepcopy_internal, getindex, setindex!, eltype, one, zero
|
import Base: convert, show, hash, ==, +, -, *, //, /, length, norm, rationalize, deepcopy_internal, getindex, setindex!, eltype, one, zero
|
||||||
|
|
||||||
@ -285,13 +285,6 @@ end
|
|||||||
#
|
#
|
||||||
###############################################################################
|
###############################################################################
|
||||||
|
|
||||||
function addeq!{T}(X::GroupRingElem{T}, Y::GroupRingElem{T})
|
|
||||||
parent(X) == parent(Y) || throw(ArgumentError(
|
|
||||||
"Elements don't seem to belong to the same Group Ring!"))
|
|
||||||
X.coeffs .+= Y.coeffs
|
|
||||||
return X
|
|
||||||
end
|
|
||||||
|
|
||||||
function add{T<:Number}(X::GroupRingElem{T}, Y::GroupRingElem{T})
|
function add{T<:Number}(X::GroupRingElem{T}, Y::GroupRingElem{T})
|
||||||
parent(X) == parent(Y) || throw(ArgumentError(
|
parent(X) == parent(Y) || throw(ArgumentError(
|
||||||
"Elements don't seem to belong to the same Group Ring!"))
|
"Elements don't seem to belong to the same Group Ring!"))
|
||||||
@ -309,7 +302,7 @@ end
|
|||||||
(+)(X::GroupRingElem, Y::GroupRingElem) = add(X,Y)
|
(+)(X::GroupRingElem, Y::GroupRingElem) = add(X,Y)
|
||||||
(-)(X::GroupRingElem, Y::GroupRingElem) = add(X,-Y)
|
(-)(X::GroupRingElem, Y::GroupRingElem) = add(X,-Y)
|
||||||
|
|
||||||
function mul!{T}(X::AbstractVector{T}, Y::AbstractVector{T},
|
function mul!{T<:Number}(X::AbstractVector{T}, Y::AbstractVector{T},
|
||||||
pm::Array{Int,2}, result::AbstractVector{T})
|
pm::Array{Int,2}, result::AbstractVector{T})
|
||||||
for (j,y) in enumerate(Y)
|
for (j,y) in enumerate(Y)
|
||||||
if y != zero(eltype(Y))
|
if y != zero(eltype(Y))
|
||||||
@ -323,11 +316,6 @@ function mul!{T}(X::AbstractVector{T}, Y::AbstractVector{T},
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
function mul!(result::GroupRingElem, X::GroupRingElem, Y::GroupRingElem)
|
|
||||||
mul!(X.coeffs, Y.coeffs, parent(X).pm, result.coeffs)
|
|
||||||
return result
|
|
||||||
end
|
|
||||||
|
|
||||||
function mul{T<:Number}(X::AbstractVector{T}, Y::AbstractVector{T},
|
function mul{T<:Number}(X::AbstractVector{T}, Y::AbstractVector{T},
|
||||||
pm::Array{Int,2})
|
pm::Array{Int,2})
|
||||||
result = zeros(X)
|
result = zeros(X)
|
||||||
@ -337,8 +325,8 @@ end
|
|||||||
|
|
||||||
function mul(X::AbstractVector, Y::AbstractVector, pm::Array{Int,2})
|
function mul(X::AbstractVector, Y::AbstractVector, pm::Array{Int,2})
|
||||||
T = promote_type(eltype(X), eltype(Y))
|
T = promote_type(eltype(X), eltype(Y))
|
||||||
result = zeros(T, X)
|
result = zeros(T, deepcopy(X))
|
||||||
mul!(Vector{T}(X), Vector{T}(Y), pm, result)
|
mul!(X, Y, pm, result)
|
||||||
return result
|
return result
|
||||||
end
|
end
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user