diff --git a/sandbox/autodiff.jl b/sandbox/autodiff.jl index 3d42348188a5adbf10fc2cc31c385651b9fc922e..a3299f1de942151500a139e8af65d5460e7e3874 100644 --- a/sandbox/autodiff.jl +++ b/sandbox/autodiff.jl @@ -109,8 +109,8 @@ begin # (not the log-semiring). `val.(X)` casts `X` in the # real-semiring while `K.(...)` converts it back # to the log-semiring. - X1 = K.( val.(X1) + (τ ⊗ ∇X1) ) - X2 = K.( val.(X2) + (τ ⊗ ∇X2) ) + X1 = K.( val.(X1) + (τ * ∇X1) ) + X2 = K.( val.(X2) + (τ * ∇X2) ) end plot(F, ylabel="F", xlabel = "step", legend = false) diff --git a/src/fst.jl b/src/fst.jl index d755e185f492721c47bb093bc9738968475197d8..eab4441081d4ec1d1aaab043b6f21fb0ae4d742c 100644 --- a/src/fst.jl +++ b/src/fst.jl @@ -31,7 +31,7 @@ function Base.:+(A::AbstractFST, B::AbstractFST) FST(α(A) + α(B), T(A) + T(B), ω(A) + ω(B), ρ(A) + ρ(B), λ(A)) end -function Semirings.:⊗(x::Number, A::AbstractFST) +function Base.:*(x::Number, A::AbstractFST) Q = nstates(A) I_α, V_α = findnz(α(A)) I_T, J_T, V_T = findnz(T(A))