I would like to know about the linearization of the $(If, Then)$ constraints as follows:
$$\begin{array}{l} \text { If: } \\ 15 \leqslant x \leqslant 25 \\ \text { then: } \quad y=\color{blue}{a} x+\color{green}{b} \\ \text { elself: } \\ 25 \leqslant x \leqslant 35 \\ \text { then: } \quad y=\color{blue}{a}^{\color{blue}{\prime}} x+\color{green}{b}^{\color{green}{\prime}} \\ \text { elself: } \\ 35 \leqslant x \leqslant 45 \\ \text { then: } \quad y=\color{blue}{a}^{\color{blue}{\prime \prime}} x+\color{green}{b}^{\color{green}{\prime \prime}} \\ \text { elself: } \\ 45 \leqslant x \leqslant 55 \\ \text { then: } \quad y=\color{blue}{a}^{\color{blue}{\prime \prime \prime}} x+\color{green}{b}^{\color{green}{\prime \prime \prime}} \\ \end{array}$$
Where $x$ and $y$ are continuous variables and $\color{blue}{a}$'s and $\color{green}{b}$'s are constant. We have tried to introduce the binary auxiliary variables for each set of constraints and finally linking these constraints with whose specific binary variable. This approach seems to work fine, but I am facing that we will have to use the product of the binary and continuous variables. I knew that we can use specific linearization to do this. I was wondering if, is there another way to formulate this problem efficiently?