  Optimization problems with discrete-continuous decisions are traditionally
modeled in algebraic form via (non)linear mixed-integer programming. A more
systematic approach to modeling such systems is to use Generalized Disjunctive
Programming (GDP), which extends the Disjunctive Programming paradigm proposed
by Egon Balas to allow modeling systems from a logic-based level of abstraction
that captures the fundamental rules governing such systems via algebraic
constraints and logic. Although GDP provides a more general way of modeling
systems, it warrants further generalization to encompass systems presenting a
hierarchical structure. This work extends the GDP literature to address three
major alternatives for modeling and solving systems with nested (hierarchical)
disjunctions: explicit nested disjunctions, equivalent single-level
disjunctions, and flattening via basic steps. We also provide theoretical
proofs on the relaxation tightness of such alternatives, showing that
explicitly modeling nested disjunctions is superior to the traditional approach
discussed in literature for dealing with nested disjunctions.
