Skip to main content
Duration: 75 minutes

Introduction

Some problems are too complex to solve in one step, even with Chain of Thought. The solution? Break them down into smaller, manageable sub-problems. In this lesson, you’ll learn systematic decomposition strategies that transform overwhelming challenges into solvable pieces.

Why Decomposition Matters

Reduces Complexity

Transforms hard problems into easier sub-problems

Improves Accuracy

Each sub-problem is simpler and less error-prone

Enables Verification

Easier to verify correctness of smaller pieces

Handles Hierarchy

Natural for problems with hierarchical structure

Least-to-Most Prompting

Start with the simplest sub-problem and build up to the complex one.

The Pattern

1

Identify Sub-Problems

Break the main problem into ordered sub-problems
2

Solve Sequentially

Solve each sub-problem, using previous solutions
3

Build to Solution

Combine sub-solutions to solve the original problem

Basic Example

Key Insight: Each sub-problem is simpler than the original, and solving them in order builds toward the complete solution.

Complex Example: Multi-Step Planning

Recursive Problem Solving

Use the solution to simpler versions of the problem to solve the complex version.

The Recursive Pattern

Example: Factorial Calculation

Example: Tower of Hanoi

Sub-Question Decomposition

Break complex questions into simpler questions.

The Pattern

Example: Business Analysis

Planning and Execution Separation

Separate the planning phase from the execution phase.

The Two-Phase Pattern

Example: Software Development

When to Use Decomposition

Use when: The problem has natural sub-components or layersExample: “Design a complete e-commerce checkout flow” (cart → shipping → payment → confirmation)
Use when: The problem spans multiple areas of expertiseExample: “Plan a product launch” (marketing + engineering + sales + support)
Use when: Later steps depend on earlier stepsExample: “Build a house” (foundation → framing → plumbing → electrical → finishing)
Use when: The full problem is too complex to hold in working memoryExample: “Optimize a company’s entire supply chain”

Advanced Decomposition Techniques

Parallel Decomposition

Break into independent sub-problems that can be solved simultaneously.

Constraint-Based Decomposition

Break down by identifying and addressing constraints.

Best Practices

Start Simple

Begin with the easiest sub-problem to build confidence

Check Dependencies

Ensure sub-problems are solved in the right order

Verify Each Step

Confirm each sub-solution before moving forward

Synthesize Clearly

Show how sub-solutions combine to solve the main problem

Practice Exercises

Exercise 1: Algorithm Design

Decompose this problem: “Design an algorithm to find the shortest path between two cities on a map.”

Exercise 2: Business Problem

Decompose: “Increase company revenue by 25% in the next year.”

Exercise 3: Technical Problem

Decompose: “Debug why a web application is slow.”

Real-World Application: Project Planning System

Key Takeaways

Use least-to-most prompting for hierarchical problems
Apply recursive decomposition for self-similar problems
Break complex questions into simpler sub-questions
Separate planning from execution for clarity
Verify each sub-solution before proceeding
Synthesize sub-solutions to solve the main problem

Next Steps

You’ve mastered problem decomposition. Now learn how to iteratively improve outputs through self-refinement and critique.

Next: Lesson 3.3 - Self-Refinement & Iteration

Improve outputs through self-critique and iteration