# How to multiply differential of complex function with imaginary unit

**URL:** <https://discourse.julialang.org/t/how-to-multiply-differential-of-complex-function-with-imaginary-unit/98180>\
**Category:** General Usage\
**Tags:** pluto, symbolics\
**Created:** [May 1, 2023, 11:30pm UTC](https://discourse.julialang.org/t/how-to-multiply-differential-of-complex-function-with-imaginary-unit/98180 "2023-05-01T23:30:08Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![Philip\_Stuckey](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/philip_stuckey/32/4000_2.png) [@Philip\_Stuckey](https://discourse.julialang.org/u/Philip_Stuckey)\
**Post date:** [May 1, 2023, 11:30pm UTC](https://discourse.julialang.org/t/how-to-multiply-differential-of-complex-function-with-imaginary-unit/98180/1 "2023-05-01T23:30:08Z")

</div>

I’m using Julia Version 1.8.5  
Symbolics 5.3.1  
and Pluto v0.19.25

> **version info**
>
> Commit 17cfb8e65ea (2023-01-08 06:45 UTC) Platform Info: OS: Linux (x86\_64-linux-gnu) CPU: 16 × AMD Ryzen 7 5800X 8-Core Processor WORD\_SIZE: 64 LIBM: libopenlibm LLVM: libLLVM-13.0.1 (ORCJIT, znver3) Threads: 1 on 16 virtual cores

When I run the following in Pluto I get

```julia
begin
	using Symbolics
	@variables x, f(x)::Complex
	im*Symbolics.Differential(x)(f)
end

```

I get

> **Failed to show value:
MethodError: no method matching isless(::Complex{Bool}, ::Int64)
Closest candidates are:
isless(!Matched::Union{StatsBase.PValue, StatsBase.TestStat}, ::Real) at ~/.julia/packages/StatsBase/XgjIN/src/statmodels.jl:90
isless(!Matched::SymbolicUtils.Symbolic{\<:Real}, ::Real) at ~/.julia/packages/SymbolicUtils/H684H/src/methods.jl:173
isless(!Matched::ForwardDiff.Dual{Tx}, ::Integer) where Tx at ~/.julia/packages/ForwardDiff/vXysl/src/dual.jl:144**
>
> ... \<(::Complex{Bool}, ::Int64)@operators.jl:356 \_toexpr(::SymbolicUtils.BasicSymbolic{Complex{Symbolics.Num}})@latexify\_recipes.jl:166 recipe(::SymbolicUtils.BasicSymbolic{Complex{Symbolics.Num}})@latexify\_recipes.jl:39 macro expansion@latexify\_recipes.jl:83[inlined] #apply\_recipe#925@recipes.jl:164[inlined] apply\_recipe@recipes.jl:158[inlined] var"#process\_latexify#156"(::Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}, ::typeof(Latexify.process\_latexify), ::SymbolicUtils.BasicSymbolic{Complex{Symbolics.Num}})@latexify\_function.jl:42 process\_latexify@latexify\_function.jl:40[inlined] var"#latexify#155"(::Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}, ::typeof(Latexify.latexify), ::SymbolicUtils.BasicSymbolic{Complex{Symbolics.Num}})@latexify\_function.jl:27 latexify@latexify\_function.jl:25[inlined] show(::IOBuffer, ::MIME{Symbol("text/latex")}, ::SymbolicUtils.BasicSymbolic{Complex{Symbolics.Num}})@latexify\_recipes.jl:112 \_\_binrepr(::MIME{Symbol("text/latex")}, ::SymbolicUtils.BasicSymbolic{Complex{Symbolics.Num}}, ::Nothing)@multimedia.jl:159 \_binrepr@multimedia.jl:0[inlined] #repr#1@multimedia.jl:147[inlined] repr(::MIME{Symbol("text/latex")}, ::SymbolicUtils.BasicSymbolic{Complex{Symbolics.Num}})@multimedia.jl:147 show\_richest(::IOContext{IOBuffer}, ::Any)@PlutoRunner.jl:1183 show\_richest\_withreturned@PlutoRunner.jl:1102[inlined] format\_output\_default(::Any, ::Any)@PlutoRunner.jl:1002 #format\_output#61@PlutoRunner.jl:1019[inlined] #53@PlutoRunner.jl:911[inlined] var"#with\_io\_to\_logs#119"(::Bool, ::Base.CoreLogging.LogLevel, ::typeof(Main.PlutoRunner.with\_io\_to\_logs), ::Main.PlutoRunner.var"#53#56"{Module, SymbolicUtils.BasicSymbolic{Complex{Symbolics.Num}}, Dict{Tuple{UInt64, Int64}, Int64}})@PlutoRunner.jl:2468 (::Main.PlutoRunner.var"#123#124"{Bool, Base.CoreLogging.LogLevel, Main.PlutoRunner.var"#53#56"{Module, SymbolicUtils.BasicSymbolic{Complex{Symbolics.Num}}, Dict{Tuple{UInt64, Int64}, Int64}}})()@PlutoRunner.jl:2492 with\_logstate(::Function, ::Any)@logging.jl:511 with\_logger@logging.jl:623[inlined] #with\_logger\_and\_io\_to\_logs#122@PlutoRunner.jl:2491[inlined] var"#formatted\_result\_of#50"(::Bool, ::typeof(Main.PlutoRunner.formatted\_result\_of), ::Base.UUID, ::Base.UUID, ::Bool, ::Vector{String}, ::Nothing, ::Module)@PlutoRunner.jl:910 top-level scope@WorkspaceManager.jl:509

Am I doing something incorrectly or have I stumbled across a bug?  
If it is a bug, is it in pluto or symbolics?
