Computational Methods: Algorithms Before Computers
Āryabhaṭa's Kuṭṭaka and the Chakravala, recursion and iteration in ancient India
Explore the Kuṭṭaka (pulverizer) algorithm for solving linear equations and the Chakravala cyclic method for solving Pell's equation, sophisticated computational methods from ancient India.
Computational Methods: Algorithms Before Computers
The word "algorithm" comes from al-Khwārizmī, the 9th-century Persian mathematician. But the concept, a step-by-step procedure that guarantees a solution, flourished in India centuries before al-Khwārizmī was born.

Indian mathematicians developed algorithms of remarkable sophistication: the Kuṭṭaka for solving simultaneous linear equations, the Chakravala for finding integer solutions to difficult quadratic equations, and iterative methods for computing square roots and trigonometric functions. These weren't just clever tricks; they were systematic procedures with guaranteed termination and provable correctness.
In a sense, ancient Indian mathematicians were programming, writing procedures that could be executed mechanically to produce correct results. The only difference from modern computing is that the "processor" was a human being rather than a machine.
What Makes Something an Algorithm?
An algorithm has specific properties:
- Definiteness: Each step is precisely defined; there's no ambiguity about what to do
- Finiteness: The procedure terminates after a finite number of steps
- Input/Output: It takes some input and produces some output
- Effectiveness: Each step can actually be carried out (no "imagine an infinite list" steps)
Modern computers execute algorithms millions of times per second. But algorithms existed long before computers, they're patterns of thought, procedures for solving problems, expressible in any medium from Sanskrit verses to Python code.

The Kuṭṭaka: Pulverizing Problems
The Kuṭṭaka ("pulverizer") is an algorithm for solving linear indeterminate equations, equations with infinitely many integer solutions. Given:
ax + c = by
(where a, b, and c are known integers), find integers x and y that satisfy it.
For example: 23x + 7 = 30y. What values of x and y work?
The Kuṭṭaka "pulverizes" this problem by reducing the coefficients step by step until the solution becomes obvious, then traces back to find the original answer.