Skip to content

Diagonality and bandedness checks with InfiniteArrays.jl? #56

Open
@TSGut

Description

@TSGut

The methods in InfiniteArrays.jl and InfiniteLinearAlgebra.jl don't currently seem to agree on what is a diagonal and what is a banded matrix. To give some concrete examples:

A minimal working example for Diagonal is

julia> LinearAlgebra.isdiag(InfiniteArrays.Diagonal(0:∞))
true

but the following never finishes computing, i.e. does not even return false:

julia> LinearAlgebra.isdiag(InfiniteLinearAlgebra.BandedMatrix(0=>(0:∞)))

Furthermore, we have a similar situation for banded matrix types:

julia> InfiniteLinearAlgebra.BandedMatrix(0 => (1:∞)) isa InfiniteLinearAlgebra.BandedMatrix
true

julia> InfiniteArrays.Diagonal(1:∞) isa InfiniteLinearAlgebra.BandedMatrix
false

What one wants these to evaluate to might be up to the design philosophy between the packages to some degree but the current behavior does seem odd.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions