# Convex.jl - LoadError: UndefVarError: AbstractExpr not defined

**URL:** <https://discourse.julialang.org/t/convex-jl-loaderror-undefvarerror-abstractexpr-not-defined/52679>\
**Category:** Optimization (Mathematical)\
**Created:** [January 1, 2021, 1:30am UTC](https://discourse.julialang.org/t/convex-jl-loaderror-undefvarerror-abstractexpr-not-defined/52679 "2021-01-01T01:30:51Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![cm0](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/cm0/32/20698_2.png) [@cm0](https://discourse.julialang.org/u/cm0)\
**Post date:** [January 1, 2021, 1:30am UTC](https://discourse.julialang.org/t/convex-jl-loaderror-undefvarerror-abstractexpr-not-defined/52679/1 "2021-01-01T01:30:51Z")

</div>

I am using Julia 1.5.3 but running some old code based on Julia 0.6.4 and ran into the following problem: LoadError: LoadError: UndefVarError: AbstractExpr not defined. The problem seems to be AbstractExpr no longer being recognized in Convex.jl. The code snippet is included below

using Pkg  
Pkg.add(“SCS”)  
Pkg.add(“Convex”)

function partialtranspose(ρ::Union{AbstractArray, AbstractExpr}, systems::Vector, dim::Vector)

Any help or suggestions is greatly appreciated.

---

<div class="post-metadata">

**Author:** ![dpsanders](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/dpsanders/32/3573_2.png) [@dpsanders](https://discourse.julialang.org/u/dpsanders)\
**Post date:** [January 1, 2021, 1:36am UTC](https://discourse.julialang.org/t/convex-jl-loaderror-undefvarerror-abstractexpr-not-defined/52679/2 "2021-01-01T01:36:52Z")

</div>

If you download Julia 0.7 and run the code there it should give you deprecation warnings telling you what you need to modify.

---

<div class="post-metadata">

**Author:** ![cm0](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/cm0/32/20698_2.png) [@cm0](https://discourse.julialang.org/u/cm0)\
**Post date:** [January 1, 2021, 2:44am UTC](https://discourse.julialang.org/t/convex-jl-loaderror-undefvarerror-abstractexpr-not-defined/52679/3 "2021-01-01T02:44:25Z")

</div>

Many thanks, the code runs in Julia 0.7. This gives me the base to migrate to 1.5.3.

---

<div class="post-metadata">

**Author:** ![ericphanson](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/ericphanson/32/215186_2.png) [@ericphanson](https://discourse.julialang.org/u/ericphanson)\
**Post date:** [January 1, 2021, 11:04am UTC](https://discourse.julialang.org/t/convex-jl-loaderror-undefvarerror-abstractexpr-not-defined/52679/4 "2021-01-01T11:04:56Z")

</div>

It’s just not exported anymore, but you should be able to do

```julia
using Convex: AbstractExpr

```

to bring it into your namespace. By the way, Convex.jl now has a partial transpose function, so you may not need to define it yourself.
