Skip to content

Commit

Permalink
Merge pull request #87 from JuliaAlgebra/explicit-imports
Browse files Browse the repository at this point in the history
Explicit extend LinearAlgebra functions
  • Loading branch information
saschatimme committed Jul 20, 2018
2 parents 505d546 + 94e28a6 commit cd76ab8
Show file tree
Hide file tree
Showing 4 changed files with 6 additions and 6 deletions.
2 changes: 1 addition & 1 deletion src/MultivariatePolynomials.jl
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ module MultivariatePolynomials
#using DocStringExtensions

using Compat
import Compat.LinearAlgebra: dot, norm, det
import Compat.LinearAlgebra

# The ' operator lowers to `transpose()` in v0.6 and to
# `adjoint()` in v0.7+.
Expand Down
2 changes: 1 addition & 1 deletion src/det.jl
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
function det(M::Matrix{<:AbstractPolynomialLike})
function Compat.LinearAlgebra.det(M::Matrix{<:AbstractPolynomialLike})
m = size(M)[1]
if m > 2
return sum((-1)^(i-1) * M[i,1] * det(M[1:end .!= i, 2:end]) for i in 1:m)
Expand Down
6 changes: 3 additions & 3 deletions src/operators.jl
Original file line number Diff line number Diff line change
Expand Up @@ -104,9 +104,9 @@ adjoint_operator(m::AbstractMonomial) = m
adjoint_operator(t::T) where {T <: AbstractTerm} = adjoint_operator(coefficient(t)) * monomial(t)
adjoint_operator(p::AbstractPolynomialLike) = polynomial(map(adjoint_operator, terms(p)))

Base.dot(p1::AbstractPolynomialLike, p2::AbstractPolynomialLike) = p1' * p2
Base.dot(x, p::AbstractPolynomialLike) = x' * p
Base.dot(p::AbstractPolynomialLike, x) = p' * x
Compat.LinearAlgebra.dot(p1::AbstractPolynomialLike, p2::AbstractPolynomialLike) = p1' * p2
Compat.LinearAlgebra.dot(x, p::AbstractPolynomialLike) = x' * p
Compat.LinearAlgebra.dot(p::AbstractPolynomialLike, x) = p' * x

# Amazingly, this works! Thanks, StaticArrays.jl!
"""
Expand Down
2 changes: 1 addition & 1 deletion src/polynomial.jl
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ export mindegree, maxdegree, extdegree
export leadingterm, leadingcoefficient, leadingmonomial
export removeleadingterm, removemonomials, monic

norm(p::AbstractPolynomialLike, r::Int=2) = norm(coefficients(p), r)
Compat.LinearAlgebra.norm(p::AbstractPolynomialLike, r::Int=2) = norm(coefficients(p), r)

changecoefficienttype(::Type{TT}, ::Type{T}) where {TT<:AbstractTermLike, T} = termtype(TT, T)
changecoefficienttype(::Type{PT}, ::Type{T}) where {PT<:AbstractPolynomial, T} = polynomialtype(PT, T)
Expand Down

0 comments on commit cd76ab8

Please sign in to comment.