---
title: 'ConeGS: Minimal Generators for Convex Cones'
url: https://www.emergentmind.com/topics/conegs
type: topic
---

# ConeGS: Minimal Generators for Convex Cones

The term **ConeGS** refers to an algorithmic framework for constructing minimum cardinality generators of finitely generated convex cones in finite-dimensional real vector spaces. It is developed as an improvement over previous approaches which only guarantee conically independent generating sets, and it exploits a structural decomposition of cones into their lineality and pointed parts. The theoretical and algorithmic foundations for ConeGS derive from "An algorithm for minimum cardinality generators of cones" [2412.01451], which establishes a constructive factor-2 bound on the size of conically independent generators versus minimum cardinality generators and introduces a polynomial-time implementation paradigm.

## 1. Formal Problem Statement and Definitions

Let $S = \{v_1, \ldots, v_n\} \subset \mathbb{R}^d$ denote a finite set of vectors. The convex cone generated by $S$ is
$$
C := \operatorname{cone}(S) = \left\{ \sum_{i=1}^n \lambda_i v_i \,\big|\, \lambda_i \geq 0 \right\}.
$$
A subset $G \subseteq S$ is:
- a **generator** of $C$ if $\operatorname{cone}(G) = C$;
- **conically independent** if no proper subset of $G$ generates $C$;
- **minimum cardinality** if for every other generator $H$, $|G| \leq |H|$.

The ConeGS problem is: given $S$, compute a subset $G^* \subseteq S$ of minimum possible size such that $\operatorname{cone}(G^*) = C$.

## 2. Structural Decomposition of Cones

Every finitely generated convex cone $C$ in $\mathbb{R}^d$ admits a unique direct sum decomposition:
$$
C = L \oplus P,
$$
where $L$ is the **lineality space** $L := C \cap ( -C )$ (the largest subspace contained in $C$), and $P$ is a **pointed** cone complementary to $L$. Given $S$:
- $S_y := S \cap L$ (those elements in the lineality space),
- $S_c := S \setminus S_y$ (the complement).

This yields:
$$
C = L + \operatorname{cone}(S_c).
$$
Projecting via $T_{L^\perp} : \mathbb{R}^d \to L^\perp$, the orthogonal complement of $L$, provides:
$$
C = L \oplus \operatorname{cone}( T_{L^\perp}( S_c ) ),
$$
where $\operatorname{cone}( T_{L^\perp}( S_c ) )$ is pointed.

This decomposition is central to ConeGS: it isolates the combinatorial aspects of the generator problem into distinct linear and pointed components, enabling sharper bounds and more efficient algorithms.

## 3. Cardinality Bounds and Factor-2 Theorem

A sequence of lemmas underpins the bound between conically independent and minimum generators for cones:
- **Lemma A:** If $C$ is pointed, every conically independent generating set for $C$ is already a minimum generator. (Follows from Dattorro, Thm.2.10.2.)
- **Lemma B:** Projecting a conically independent generator to the pointed quotient yields a minimum generator there; cardinalities are preserved for the conical part.
- **Lemma C:** For a $d$-dimensional subspace $L$, any conically independent generator $H \subset L$ satisfies $|H| \leq 2d$. For a minimum generator $G^*_y \subset L$, any $H_y$ has $|H_y| \leq 2|G^*_y|$.

Combining these, the main result is:
$$
|G'| \leq 2|G^*|
$$
for any conically independent $G'$ and minimum generator $G^*$ of $C$, with $G'$ split according to the above decomposition. This generalizes the known bound for subspaces to all finitely generated cones and provides a theoretical guarantee for algorithmic approaches.

## 4. Polynomial-Time Generator Algorithms

ConeGS is realized by two algorithmic routines, both with provable polynomial runtime.

### 4.1 FIND_CONICALLY_INDEPENDENT_GENERATOR

Given $S = \{ s_1, ..., s_k \} \subset \mathbb{R}^d$,
```python
def FIND_CONICALLY_INDEPENDENT_GENERATOR(S):
    S_prime = S.copy()
    for s in S:
        if s in cone(S_prime \ {s}):
            S_prime.remove(s)
    return S_prime
```
This routine iteratively attempts to remove elements from $S$, testing if removal preserves the generated cone. Each removal uses a linear program (LP) for membership. Correctness follows since each $s$ left in $S'$ is not a conical combination of the others, and the set generates $C$.

- **Complexity:** $O(k)$ LP feasibility tests. Each LP: $O(d^{3.5} \cdot L)$ by Karmarkar’s method.

### 4.2 FIND_MINIMUM_CARDINALITY_GENERATOR

Given $S \subset \mathbb{R}^d$,
```python
def FIND_MINIMUM_CARDINALITY_GENERATOR(S):
    S_prime = FIND_CONICALLY_INDEPENDENT_GENERATOR(S)
    S_y = {s in S_prime | -s in cone(S_prime)}
    S_c = S_prime - S_y
    B = GAUSS_BASIS(S_y)
    L_gen = B union { -b for b in B }
    return L_gen union S_c
```
- $S_y$ isolates generators in lineality space;
- $S_c$ is the complement;
- Compute a basis $B$ for $\operatorname{span}(S_y)$;
- Construct $L_\text{gen} = B \cup \{ -b | b \in B \}$ as the minimum generator for $L$;
- Final generator $G^* = L_\text{gen} \cup S_c$.

- **Complexity:** $O(k \cdot d^{3.5} \cdot L) + O(d \cdot k^2)$. Overall, polynomial in $d$, $k$, and input bit-length.

A summary table:

| Subroutine                         | Purpose                         | Complexity                        |
|-------------------------------------|----------------------------------|-----------------------------------|
| FIND_CONICALLY_INDEPENDENT_GENERATOR| Prunes $S$ to conically independent| $O(k)$ LPs, $O(k \cdot d^{3.5} \cdot L)$ |
| FIND_MINIMUM_CARDINALITY_GENERATOR  | Returns minimum generating set   | $O(k \cdot d^{3.5} \cdot L) + O(dk^2)$ |

## 5. Comparative Performance and Implications

Traditional algorithms (e.g., Wets & Witzgall 1967) return only conically independent generating sets, which, as established, can be twice as large as the minimum. ConeGS overcomes this by:
- Decomposing the cone into lineality and pointed parts,
- Projecting to the pointed part (where the minimum generator is efficiently obtainable),
- Systematically combining minimum generators for the linear and conical components.

The constructive nature and explicit complexity guarantees of ConeGS distinguish it from prior approaches. In practice, ConeGS is robust for high-dimensional cones or those where the minimum generator is significantly smaller than conically independent ones.

A worked example (not in the original source, but summarized): for
$$
S = \{(1,0), (0,1), (1,1), (-1,-1)\} \subset \mathbb{R}^2
$$
the minimal generator consists of $\{ (1,0), (0,1), (1,1), (-1,-1) \}$ being reduced (by conical independence and decomposition) to the unique minimum.

## 6. Applications and Extensions

The algorithmic ideas underlying ConeGS are directly applicable in:
- Generating minimal, non-redundant representations of polyhedral cones,
- Tight outer-approximations for convex sets in optimization,
- Sparse formulation of convex hulls in computational geometry,
- Lattice point enumeration, where minimization of generators improves tractability.

*This suggests* broader utility in algorithms where sparsity and non-redundancy of cone generators are critical for subsequent computational efficiency in convex and polyhedral optimization routines.

## 7. Innovations and Theoretical Impact

The principal innovations introduced by ConeGS are:
- Extension of the factor-2 bound from linear spaces to all convex cones via canonical splitting;
- Explicit, constructive reliance on cone decomposition — separating lineality and pointed components — to facilitate efficient computation;
- Tight combinatorial upper bound for the size of minimum generators in each part;
- A fully polynomial-time algorithm for explicit generator minimization.

A plausible implication is that ConeGS serves as a foundational component for any system or toolset ("ConeGS tool") that must represent convex cones minimally for downstream optimization, analysis, or geometric processing.

ConeGS thus represents a canonical approach for minimal generator computation in convex geometry, blending theory and practice via its decomposition architecture and algorithmic guarantees [2412.01451].

Source: https://www.emergentmind.com/topics/conegs