# rdiv!(A', svd(B))

**URL:** <https://discourse.julialang.org/t/rdiv-a-svd-b/140265>\
**Category:** Numerics\
**Tags:** question, linearalgebra\
**Created:** [October 26, 2026, 2:22pm UTC](https://discourse.julialang.org/t/rdiv-a-svd-b/140265 "2026-10-26T14:22:33Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![Tamas\_Papp](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/tamas_papp/32/25949_2.png) [@Tamas\_Papp](https://discourse.julialang.org/u/Tamas_Papp)\
**Post date:** [October 26, 2026, 2:22pm UTC](https://discourse.julialang.org/t/rdiv-a-svd-b/140265/1 "2026-10-26T14:22:33Z")

</div>

Is it possible to `rdiv!` by an SVD factorization? As in

```julia
using LinearAlgebra
A = ones(3)
B = randn(3, 3)
Blu = lu!(copy(B))
rdiv!(A', Blu) # works
Bsvd = svd!(copy(B))
rdiv!(A', Bsvd) # fails, no such method

```

In other words, I am asking if there is a technical reason preventing this, or it simply wasn’t added (yet, as of 1.13.3).

---

<div class="post-metadata">

**Author:** ![langestefan](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/langestefan/32/207923_2.png) [@langestefan](https://discourse.julialang.org/u/langestefan)\
**Post date:** [October 26, 2026, 2:58pm UTC](https://discourse.julialang.org/t/rdiv-a-svd-b/140265/2 "2026-10-26T14:58:55Z")

</div>

So basically you want: X \leftarrow X F^{+}, where F = U \Sigma V^\*. Then you can make use of:

\left( X F^{+} \right)^{\top} = \left( F^{+} \right)^{\top} X^{\top} = \left( F^{\top} \right)^{+} X^{\top}

So this should work:

```julia
LinearAlgebra.rdiv!(X::AbstractMatrix, F::SVD) = (ldiv!(F', X'); X)

```

With your example I get

```julia-auto
julia> rdiv!(A', Bsvd)
1×3 adjoint(::Vector{Float64}) with eltype Float64:
 1.2252 -2.33595 0.699014

```

p.s. this works because `ldiv!(F::SVD, B::AbstractVecOrMat)` does exist:

> <https://github.com/JuliaLang/LinearAlgebra.jl/blob/80cce3f443484a285aecdc887e8fee907afe3ed3/src/svd.jl#L296>
