Closed
Description
Currently, det
does not work on matrices whole element type is not polynomial. On Julia v0.6.2:
julia> det([x x; x x])
ERROR: MethodError: convert(::Type{DynamicPolynomials.Monomial{true}}, ::DynamicPolynomials.Polynomial{true,Int64}) is ambiguous. Candidates:
convert(::Type{P}, α) where P<:(MultivariatePolynomials.AbstractPolynomialLike{T} where T) in MultivariatePolynomials at /home/blegat/.julia/v0.6/MultivariatePolynomials/src/conversion.jl:4
convert(::Type{S}, p::MultivariatePolynomials.AbstractPolynomialLike{T} where T) where S in MultivariatePolynomials at /home/blegat/.julia/v0.6/MultivariatePolynomials/src/conversion.jl:10
Possible fix, define
convert(::Type{S<:(MultivariatePolynomials.AbstractPolynomialLike{T} where T)}, ::MultivariatePolynomials.AbstractPolynomialLike{T} where T)
Stacktrace:
[1] generic_lufact!(::Array{MultivariatePolynomials.RationalPoly{DynamicPolynomials.Polynomial{true,Int64},DynamicPolynomials.Monomial{true}},2}, ::Type{Val{false}}) at ./linalg/lu.jl:64
[2] lufact(::Array{DynamicPolynomials.PolyVar{true},2}) at ./linalg/lu.jl:150
[3] det(::Array{DynamicPolynomials.PolyVar{true},2}) at ./linalg/generic.jl:1226
[4] macro expansion at ./REPL.jl:97 [inlined]
[5] (::Base.REPL.##1#2{Base.REPL.REPLBackend})() at ./event.jl:73
julia> det([x^2 x; x x])
ERROR: MethodError: convert(::Type{DynamicPolynomials.Monomial{true}}, ::DynamicPolynomials.Polynomial{true,Int64}) is ambiguous. Candidates:
convert(::Type{P}, α) where P<:(MultivariatePolynomials.AbstractPolynomialLike{T} where T) in MultivariatePolynomials at /home/blegat/.julia/v0.6/MultivariatePolynomials/src/conversion.jl:4
convert(::Type{S}, p::MultivariatePolynomials.AbstractPolynomialLike{T} where T) where S in MultivariatePolynomials at /home/blegat/.julia/v0.6/MultivariatePolynomials/src/conversion.jl:10
Possible fix, define
convert(::Type{S<:(MultivariatePolynomials.AbstractPolynomialLike{T} where T)}, ::MultivariatePolynomials.AbstractPolynomialLike{T} where T)
Stacktrace:
[1] generic_lufact!(::Array{MultivariatePolynomials.RationalPoly{DynamicPolynomials.Polynomial{true,Int64},DynamicPolynomials.Monomial{true}},2}, ::Type{Val{false}}) at ./linalg/lu.jl:64
[2] lufact(::Array{DynamicPolynomials.Monomial{true},2}) at ./linalg/lu.jl:150
[3] det(::Array{DynamicPolynomials.Monomial{true},2}) at ./linalg/generic.jl:1226
[4] macro expansion at ./REPL.jl:97 [inlined]
[5] (::Base.REPL.##1#2{Base.REPL.REPLBackend})() at ./event.jl:73
julia> det([2x^2 x; x x])
ERROR: MethodError: convert(::Type{DynamicPolynomials.Term{true,Int64}}, ::DynamicPolynomials.Polynomial{true,Int64}) is ambiguous. Candidates:
convert(::Type{P}, α) where P<:(MultivariatePolynomials.AbstractPolynomialLike{T} where T) in MultivariatePolynomials at /home/blegat/.julia/v0.6/MultivariatePolynomials/src/conversion.jl:4
convert(::Type{DynamicPolynomials.Term{C,T}}, α) where {C, T} in DynamicPolynomials at /home/blegat/.julia/v0.6/DynamicPolynomials/src/term.jl:25
convert(::Type{S}, p::MultivariatePolynomials.AbstractPolynomialLike{T} where T) where S in MultivariatePolynomials at /home/blegat/.julia/v0.6/MultivariatePolynomials/src/conversion.jl:10
Possible fix, define
convert(::Type{DynamicPolynomials.Term{C,T}}, ::MultivariatePolynomials.AbstractPolynomialLike{T} where T)
Stacktrace:
[1] generic_lufact!(::Array{MultivariatePolynomials.RationalPoly{DynamicPolynomials.Polynomial{true,Int64},DynamicPolynomials.Term{true,Int64}},2}, ::Type{Val{false}}) at ./linalg/lu.jl:64
[2] lufact(::Array{DynamicPolynomials.Term{true,Int64},2}) at ./linalg/lu.jl:150
[3] det(::Array{DynamicPolynomials.Term{true,Int64},2}) at ./linalg/generic.jl:1226
[4] macro expansion at ./REPL.jl:97 [inlined]
[5] (::Base.REPL.##1#2{Base.REPL.REPLBackend})() at ./event.jl:73
julia> det([2x^2+x x; x x])
(4x^5 + 2x^4) / (2x^2 + x)
EDIT: I just tested on julia master, the same error is present.
Metadata
Metadata
Assignees
Labels
No labels