# Modeling scalene(x,2,-3) as quasilinear function

Hello,

`scalene(x,a,b)` is abbreviation for `a*pos(x)+b*neg(x)` for positive `a` and `b` (documentation).

For my purposes, I need `b` to be negative. This leads to quasi-linear functions of these shapes:

My problem is that CVX do not recognize quasi-linearity and it report `UNKNOWN` curvature.

How can I model `scalene(x,2,-3)` as function of `QUASILINEAR` curvature in CVX?

To be specific, in the end I need constraints

[sum(scalene(v[i]-v[j],S[i,j],-S[j,i])) for i in [1…n])==0] for j in [1…n]]`

where `S[i,j]` are some positive constants.

Read section 4,2,5 “Quasiconvex optimization” of https://web.stanford.edu/~boyd/cvxbook/bv_cvxbook.pdf , and in particular, see the bisection algorithm,.

Alternatively, you can use CVXPY’s Disciplined Quasiconvex Programming https://www.cvxpy.org/tutorial/dqcp/index.html which will implement the bisection for you.

Hello, thank you for reply. I read both proposed sources very carefully, but I have not found answer to my problem. I know how does the Quasi-linear convex optimalization work. My problem is that CVX does not recognize my special function to be quasi-linear.

Mark says you should use cvxpy instead of cvx if you want to do quasiconvex optimization. In other words you cannot use cvx for your problem.

Ahh, I see. I am using CVXPY. And it reports UNKNOWN curvature od my quasilinear function, so I cannot run a solver, even if using `qcp=True` parameter.

I would ask at cvxpy on stackexchange