# How to identify a constraint in JuMp?

**URL:** <https://discourse.julialang.org/t/how-to-identify-a-constraint-in-jump/95434>\
**Category:** Optimization (Mathematical)\
**Tags:** question, package, jump\
**Created:** [March 2, 2023, 11:26am UTC](https://discourse.julialang.org/t/how-to-identify-a-constraint-in-jump/95434 "2023-03-02T11:26:54Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![Optimization](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/optimization/32/32462_2.png) [@Optimization](https://discourse.julialang.org/u/Optimization)\
**Post date:** [March 2, 2023, 11:26am UTC](https://discourse.julialang.org/t/how-to-identify-a-constraint-in-jump/95434/1 "2023-03-02T11:26:54Z")

</div>

Hi,

I’m writing all constrained with a given name, as follows:

```julia
@constraint(m, constraint[j in 1:20], sum(A[j,i]*x[i] for i in 1:30) <= b[j])

```

after runing the model, it returns `Infeasibility row 'c11': 0 = 1.`

how can I find that row c11 is correnspond to which constraint? None of the name that I used for my constraint are in the format of `c` followd by number like `c11`

---

<div class="post-metadata">

**Author:** ![odow](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/odow/32/28685_2.png) [@odow](https://discourse.julialang.org/u/odow)\
**Post date:** [March 2, 2023, 7:03pm UTC](https://discourse.julialang.org/t/how-to-identify-a-constraint-in-jump/95434/2 "2023-03-02T19:03:27Z")

</div>

What solver are you using?

---

<div class="post-metadata">

**Author:** ![Optimization](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/optimization/32/32462_2.png) [@Optimization](https://discourse.julialang.org/u/Optimization)\
**Post date:** [March 3, 2023, 9:08pm UTC](https://discourse.julialang.org/t/how-to-identify-a-constraint-in-jump/95434/3 "2023-03-03T21:08:25Z")

</div>

I call CPLEX

---

<div class="post-metadata">

**Author:** ![odow](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/odow/32/28685_2.png) [@odow](https://discourse.julialang.org/u/odow)\
**Post date:** [March 3, 2023, 10:27pm UTC](https://discourse.julialang.org/t/how-to-identify-a-constraint-in-jump/95434/4 "2023-03-03T22:27:30Z")

</div>

You need to set the `CPLEX.PassNames` attribute:

```plaintext
julia> using JuMP, CPLEX

julia> model = Model(CPLEX.Optimizer);

julia> set_optimizer_attribute(model, CPLEX.PassNames(), true)

julia> @constraint(model, my_constraint, 0 == 1)
my_constraint : 0 = 1.0

julia> optimize!(model)
CPLEX Error 3003: Not a mixed-integer problem.
Version identifier: 12.10.0.0 | 2019-11-26 | 843d4de
Infeasibility row 'my_constraint': 0 = 1.
Presolve time = 0.00 sec. (0.00 ticks)

```

See the documentation in the `CPLEX.Optimizer` object:

```julia
help?> CPLEX.Optimizer
  Optimizer(env::Union{Nothing, Env} = nothing)

  Create a new Optimizer object.

  You can share CPLEX Envs between models by passing an instance of Env as the first argument.

  Set optimizer attributes using MOI.RawOptimizerAttribute or JuMP.set_optimizer_atttribute.

  Example
  =========

  using JuMP, CPLEX
  const env = CPLEX.Env()
  model = JuMP.Model(() -> CPLEX.Optimizer(env)
  set_optimizer_attribute(model, "CPXPARAM_ScreenOutput", 0)

  CPLEX.PassNames
  =================

  By default, variable and constraint names are stored in the MOI wrapper, but are not passed to
  the inner CPLEX model object because doing so can lead to a large performance degradation. The
  downside of not passing names is that various log messages from CPLEX will report names like
  constraint "R1" and variable "C2" instead of their actual names. You can change this behavior
  using CPLEX.PassNames to force CPLEX.jl to pass variable and constraint names to the inner CPLEX
  model object:

  using JuMP, CPLEX
  model = JuMP.Model(CPLEX.Optimizer)
  set_optimizer_attribute(model, CPLEX.PassNames(), true)

```

---

<div class="post-metadata">

**Author:** ![Optimization](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/optimization/32/32462_2.png) [@Optimization](https://discourse.julialang.org/u/Optimization)\
**Post date:** [March 7, 2023, 9:14pm UTC](https://discourse.julialang.org/t/how-to-identify-a-constraint-in-jump/95434/5 "2023-03-07T21:14:02Z")

</div>

Thanks odow
