graph LR A[Convex Set 𝒦] --> B[Search Space S] B --> C[Cutting Plane] C --> D[Smaller S⁺] D --> E[Repeat Until Found] style A fill:#4caf50 style B fill:#ff9800 style C fill:#f44336 style D fill:#2196f3 style E fill:#9c27b0
graph TD A[Query Point x₀] --> B{Separation Oracle Ω} B -->|"x₀ ∈ 𝒦"| C["✅ Feasible"] B -->|"x₀ ∉ 𝒦"| D[Return Hyperplane] D --> E["gᵀ(x - x₀) + β ≤ 0"] E --> F["Cut off half-space"] style A fill:#ff9800 style B fill:#f44336 style C fill:#4caf50 style D fill:#ff9800 style E fill:#2196f3 style F fill:#9c27b0
graph LR subgraph "Deep Cut β > 0" DC["x₀ inside → more removed"] end subgraph "Central Cut β = 0" CC["x₀ on boundary → half removed"] end subgraph "Shallow Cut β < 0" SC["x₀ outside → less removed"] end style DC fill:#f44336 style CC fill:#ff9800 style SC fill:#2196f3
graph TD A[Initial Ellipsoid E₀] --> B[Query Oracle at Center xₖ] B --> C{Feasible?} C -->|Yes| D[Found Solution ✅] C -->|No| E[Get Cutting Plane] E --> F[Update Ellipsoid] F --> G[Volume Shrinks] G --> B style A fill:#ff9800 style B fill:#2196f3 style C fill:#f44336 style D fill:#4caf50 style E fill:#ff9800 style F fill:#9c27b0 style G fill:#2196f3