# Missing \`\\\` method in Julia 1.0 (SparseMatrixCSC{Int64,Int64} \\ Vector{Float64})

**URL:** <https://discourse.julialang.org/t/missing-method-in-julia-1-0-sparsematrixcsc-int64-int64-vector-float64/13739>\
**Category:** General Usage\
**Tags:** documentation\
**Created:** [August 19, 2018, 11:52pm UTC](https://discourse.julialang.org/t/missing-method-in-julia-1-0-sparsematrixcsc-int64-int64-vector-float64/13739 "2018-08-19T23:52:03Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![Nosferican](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/nosferican/32/9275_2.png) [@Nosferican](https://discourse.julialang.org/u/Nosferican)\
**Post date:** [August 19, 2018, 11:52pm UTC](https://discourse.julialang.org/t/missing-method-in-julia-1-0-sparsematrixcsc-int64-int64-vector-float64/13739/1 "2018-08-19T23:52:03Z")

</div>

```julia
X::SparseMatrixCSC{Int64,Int64}
y::Vector{Float64}
X \ y
ERROR: MethodError: no method matching lu!(::SparseArrays.SparseMatrixCSC{Float64,Int64}, ::Val{false}; check=false)

```

Is there a replacement for it in Julia 1.0?

---

<div class="post-metadata">

**Author:** ![ufechner7](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/ufechner7/32/51363_2.png) [@ufechner7](https://discourse.julialang.org/u/ufechner7)\
**Post date:** [August 20, 2018, 12:01am UTC](https://discourse.julialang.org/t/missing-method-in-julia-1-0-sparsematrixcsc-int64-int64-vector-float64/13739/2 "2018-08-20T00:01:15Z")

</div>

The example is not complete. x and y are not defined. If you would provide a complete example, Julia 0.7 would give you the answer.

---

<div class="post-metadata">

**Author:** ![Nosferican](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/nosferican/32/9275_2.png) [@Nosferican](https://discourse.julialang.org/u/Nosferican)\
**Post date:** [August 20, 2018, 12:31am UTC](https://discourse.julialang.org/t/missing-method-in-julia-1-0-sparsematrixcsc-int64-int64-vector-float64/13739/3 "2018-08-20T00:31:35Z")

</div>

One variant,

```julia
using Random: seed!, shuffle
using SparseArrays: sparse
seed!(0)
X = reshape(1:100, 50, 2) |> sparse;
y = shuffle(1:50);
X \ y
ERROR: MethodError: no method matching eps(::Type{Int64})

```

Another variant,

```julia
using SparseArrays: spdiagm
λ = 1600
y = 100 * log.([43606,43808,44201,44579,44681,45033,45295,45029,44238,43739,43784,43517,43952,45084,46442,46855,47871,48068,47955,48309,48504,48286,49319,50164,50475,50522,50365,49702,49158,48896,48882,49331,49963,50790,51262,51805,52295,52584,52601,52930,53157,53066,52932,52385,51300,50912,51506,52088,53016,53679,53429,54175,54458,54347,54228,53744,53662,53977,54388,54871,55276,55644,55977,56028,56322,56658,57077,57360,57898,58221,58903,59421,60003,60690,61490,62321,63192,64110,64644,65200,65530,65750,66164,66900,67295,67904,68487,69246,69905,70636,70917,71240,71452,71029,70948,70790,70859,71253,71617,72108,72945,73760,74263,75270,76285,76887,77276,78035,78296,78602,78611,77657,76649,76520,77230,78018,79049,79376,79892,80448,81391,82488,83532,84408,85461,86951,87618,88673,89480,90109,90325,90673,90994,90099,90210,90943,91210,91490,91479,90893,90432,89864,89183,88769,89090,90022,91247,92227,93429,94479,95344,96107,96843,97459,98045,98609,98935,99155,99934,100511,101164,101900,102646,103664,104487,105324,106009,106906,107619,108026,108365,108849,109647,109862,109525,109160,108577,108338,108340,108325,108368,108721,108966,109496,109998,110754,111451,112312,113248,114246,115254,116164,116913,117294,117887,118322,119002,119774,120427,121147,122000,122818,123605,124554,125177,126080,126774,127601,128244,129091,129791,130780,131608,132075,132377,132731,132752,132302,131793,131005,130713,130684,130526,130505,130238,130195,130281,130618,131158,131791,132120,132660,133169,133955,134593,135174,136049,136337,136883,137266,137785,138085,138116,138413,138268,137708,136781,134844,132527,131020,130260,129774,129896,130528,130372,130840,131295,131949,132372,132927,133761,134038,134552,135076,135712,136268,136862,137387,138014,138843,139579,140402,140972,141724,142300,143146,143733,144175]);
N = length(y);
H = spdiagm(-2 => fill(λ, N-2),
                -1 => vcat(-2λ, fill(-4λ, N - 3), -2λ),
                 0 => vcat(1 + λ, 1 + 5λ, fill(1 + 6λ, N-4),
                           1 + 5λ, 1 + λ),
                 1 => vcat(-2λ, fill(-4λ, N - 3), -2λ),
                 2 => fill(λ, N-2));
H \ y
ERROR: MethodError: no method matching lu!(::SparseArrays.SparseMatrixCSC{Float64,Int64}, ::Val{false}; check=false)

```

---

<div class="post-metadata">

**Author:** ![baggepinnen](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/baggepinnen/32/693_2.png) [@baggepinnen](https://discourse.julialang.org/u/baggepinnen)\
**Post date:** [August 20, 2018, 3:31am UTC](https://discourse.julialang.org/t/missing-method-in-julia-1-0-sparsematrixcsc-int64-int64-vector-float64/13739/4 "2018-08-20T03:31:28Z")

</div>

Are you on Julia 1.0? I think Julia 0.7 hints at where the method has gone.

---

<div class="post-metadata">

**Author:** ![Nosferican](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/nosferican/32/9275_2.png) [@Nosferican](https://discourse.julialang.org/u/Nosferican)\
**Post date:** [August 20, 2018, 3:32am UTC](https://discourse.julialang.org/t/missing-method-in-julia-1-0-sparsematrixcsc-int64-int64-vector-float64/13739/5 "2018-08-20T03:32:58Z")

</div>

Tried it originally on Julia 0.7 (I was porting code from 0.6, but it had no help).

---

<div class="post-metadata">

**Author:** ![ufechner7](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/ufechner7/32/51363_2.png) [@ufechner7](https://discourse.julialang.org/u/ufechner7)\
**Post date:** [August 20, 2018, 7:22am UTC](https://discourse.julialang.org/t/missing-method-in-julia-1-0-sparsematrixcsc-int64-int64-vector-float64/13739/6 "2018-08-20T07:22:32Z")

</div>

I can confirm that trying this code on 0.7 doesn’t help:

```julia
ufechner@tuxedo:~$ julia7
               _
   _ _ _(_)_ | A fresh approach to technical computing
  (_) | (_) (_) | Documentation: https://docs.julialang.org
   _ _ _| |_ __ _ | Type "?" for help, "]?" for Pkg help.
  | | | | | | |/ _` | |
  | | |_| | | | (_| | | Version 0.7.0 (2018-08-08 06:46 UTC)
 _/ |\ __'_|_|_|\__'_| | Official http://julialang.org/ release
|__/ | x86_64-pc-linux-gnu

julia> using Random: seed!, shuffle

julia> using SparseArrays: sparse

julia> seed!(0)
Random.MersenneTwister(UInt32[0x00000000], Random.DSFMT.DSFMT_state(Int32[748398797, 1073523691, -1738140313, 1073664641, -1492392947, 1073490074, -1625281839, 1073254801, 1875112882, 1073717145 … 943540191, 1073626624, 1091647724, 1073372234, -1273625233, -823628301, 835224507, 991807863, 382, 0]), [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 … 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], UInt128[0x00000000000000000000000000000000, 0x00000000000000000000000000000000, 0x00000000000000000000000000000000, 0x00000000000000000000000000000000, 0x00000000000000000000000000000000, 0x00000000000000000000000000000000, 0x00000000000000000000000000000000, 0x00000000000000000000000000000000, 0x00000000000000000000000000000000, 0x00000000000000000000000000000000 … 0x00000000000000000000000000000000, 0x00000000000000000000000000000000, 0x00000000000000000000000000000000, 0x00000000000000000000000000000000, 0x00000000000000000000000000000000, 0x00000000000000000000000000000000, 0x00000000000000000000000000000000, 0x00000000000000000000000000000000, 0x00000000000000000000000000000000, 0x00000000000000000000000000000000], 1002, 0)

julia> X = reshape(1:100, 50, 2) |> sparse;

julia> y = shuffle(1:50);

julia> X \ y
ERROR: MethodError: no method matching eps(::Type{Int64})
Closest candidates are:
  eps(::Dates.Time) at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v0.7/Dates/src/types.jl:334
  eps(::Dates.Date) at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v0.7/Dates/src/types.jl:333
  eps(::Dates.DateTime) at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v0.7/Dates/src/types.jl:332
  ...
Stacktrace:
 [1] _default_tol(::SparseArrays.SparseMatrixCSC{Int64,Int64}) at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v0.7/SuiteSparse/src/spqr.jl:139
 [2] qr(::SparseArrays.SparseMatrixCSC{Int64,Int64}) at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v0.7/SuiteSparse/src/spqr.jl:201
 [3] \(::SparseArrays.SparseMatrixCSC{Int64,Int64}, ::Array{Int64,1}) at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v0.7/SparseArrays/src/linalg.jl:1043
 [4] top-level scope at none:0

```

The error message looks strange to me and is different from the error message on 1.0, though.

---

<div class="post-metadata">

**Author:** ![ufechner7](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/ufechner7/32/51363_2.png) [@ufechner7](https://discourse.julialang.org/u/ufechner7)\
**Post date:** [August 20, 2018, 8:03am UTC](https://discourse.julialang.org/t/missing-method-in-julia-1-0-sparsematrixcsc-int64-int64-vector-float64/13739/7 "2018-08-20T08:03:54Z")

</div>

It actually also doesn’t work on 0.6, which means this method was never implemented:

```julia
               _
   _ _ _(_)_ | A fresh approach to technical computing
  (_) | (_) (_) | Documentation: https://docs.julialang.org
   _ _ _| |_ __ _ | Type "?help" for help.
  | | | | | | |/ _` | |
  | | |_| | | | (_| | | Version 0.6.2 (2017-12-13 18:08 UTC)
 _/ |\ __'_|_|_|\__'_| | Official http://julialang.org/ release
|__/ | x86_64-pc-linux-gnu

julia> X = reshape(1:100, 50, 2) |> sparse;

julia> y = shuffle(1:50);

julia> X \ y
ERROR: MethodError: no method matching Base.SparseArrays.CHOLMOD.Sparse(::SparseMatrixCSC{Int64,Int64}, ::Int64)
Closest candidates are:
  Base.SparseArrays.CHOLMOD.Sparse(::Integer, ::Integer, ::Array{Int64,1}, ::Array{Int64,1}, ::Array{#s268,1} where #s268<:Union{Complex{Float64}, Float64}) at sparse/cholmod.jl:899
  Base.SparseArrays.CHOLMOD.Sparse(::Integer, ::Integer, ::Array{Int64,1}, ::Array{Int64,1}, ::Array{Tv<:Union{Complex{Float64}, Float64},1}, ::Any) where Tv<:Union{Complex{Float64}, Float64} at sparse/cholmod.jl:865
  Base.SparseArrays.CHOLMOD.Sparse(::SparseMatrixCSC{Tv<:Union{Complex{Float64}, Float64},Int64}, ::Integer) where Tv<:Union{Complex{Float64}, Float64} at sparse/cholmod.jl:913
Stacktrace:
 [1] \(::SparseMatrixCSC{Int64,Int64}, ::Array{Int64,1}) at ./sparse/linalg.jl:873

```

So I would suggest to file an issue on Github:

> **[GitHub - JuliaLang/julia: The Julia Programming Language](https://github.com/JuliaLang/julia)**
>
> The Julia Programming Language. Contribute to JuliaLang/julia development by creating an account on GitHub.
