Algorithm¶
Core Idea¶
Step-by-step procedure for solving a problem.
How would you explain it like I'm…
Step-by-Step Recipe
Recipe of Exact Steps
Step-by-Step Procedure
Broad Use¶
Guides reasoning in structured problem-solving (e.g., recipes, workflows, or business processes).
Clarity¶
Breaks processes into repeatable, structured steps, like recipes or sorting algorithms.
Manages Complexity¶
Standardizes problem-solving into repeatable steps.
Abstract Reasoning¶
Encourages structured, sequential reasoning and process optimization.
Knowledge Transfer¶
Found in computer science, logistics, and medicine (diagnostic protocols).
Example¶
A navigation app uses Dijkstra's algorithm to find the shortest path between two locations.
Relationships to Other Abstractions¶
Current abstraction Algorithm Prime
Parents (2) — more general patterns this builds on
-
Algorithm presupposes Function (Mapping) Prime
An algorithm presupposes function because the procedure it specifies is precisely a mechanical way of realizing a deterministic input-to-output mapping.
-
Algorithm presupposes Iteration Prime
An algorithm presupposes iteration because executing a finite sequence of prescribed steps that update state until termination is the iterative pattern.
Children (54) — more specific cases that build on this
-
Bisection Method Domain-specific is a kind of Algorithm
Algorithm is the strict parent because bisection prescribes finite executable steps, maintains a correctness invariant, terminates under a tolerance rule, and has an explicit evaluation bound.
-
Bruun's FFT algorithm Domain-specific is a kind of Algorithm
The proposed strict upward parent is
prime:algorithm. -
Chang–Roberts Algorithm Domain-specific is a kind of Algorithm
prime:algorithmis the minimal parent: Chang–Roberts is a finite rule system mapping admissible distributed executions to a selected leader. -
Creativity techniques Domain-specific is a kind of Algorithm
The proposed strict upward parent is
prime:algorithm. -
Davis–Putnam Algorithm Domain-specific is a kind of Algorithm
prime:algorithmis the minimal parent.
- Direct Linear Transformation Domain-specific is a kind of Algorithm
**`prime:algorithm`** is the minimal parent by strict specialization.
- Division Algorithm Domain-specific is a kind of Algorithm
Division Algorithm is a strict specialization of `prime:algorithm`: it is a terminating, unambiguous procedure with defined inputs and outputs, but adds the arithmetic quotient–remainder contract.
- Enumeration Algorithm Domain-specific is a kind of Algorithm
**`algorithm` — confirmed strict parent.** Every enumeration algorithm is an algorithm: it accepts an encoded input, executes definite effective steps, preserves correctness invariants, and has explicit termination and resource semantics.
- Euler Method Domain-specific is a kind of Algorithm
**`prime:algorithm`** is the proposed minimal parent by strict specialization.
- Evolutionary Algorithm Domain-specific is a kind of Algorithm
**`prime:algorithm`** is the proposed minimal parent by strict specialization.
- Exponential Integrator Domain-specific is a kind of Algorithm
Exponential Integrator instantiates **Algorithm**: it is a terminating computational procedure for advancing a numerical state, and `prime:algorithm` is the proposed minimal parent.
- Forward–Backward Algorithm Domain-specific is a kind of Algorithm
Forward–Backward Algorithm is a strict specialization of prime:algorithm: it defines inputs, finite recursive steps, termination after two passes, and posterior-marginal outputs.
- Fourier–Motzkin Elimination Domain-specific is a kind of Algorithm
**`prime:algorithm` (proposed primary parent, strict subsumption).** Fourier–Motzkin is a definite input-to-output procedure with correctness and resource semantics.
- Frontal Solver Domain-specific is a kind of Algorithm
**Algorithm** is the strict parent because the frontal method is a terminating constructive procedure with specified inputs, output factorization, correctness, and time/storage bounds.
- Gauss–Newton Algorithm Domain-specific is a kind of Algorithm
**prime:algorithm** is the proposed minimal parent by strict specialization.
- Held–Karp algorithm Domain-specific is a kind of Algorithm
The proposed strict upward parent is `prime:algorithm`.
- Hunt–Szymanski Algorithm Domain-specific is a kind of Algorithm
**prime:algorithm** is the proposed minimal parent by strict specialization.
- Hybrid algorithm Domain-specific is a kind of Algorithm
The proposed strict upward parent is `prime:algorithm`.
- Knuth–Eve Algorithm Domain-specific is a kind of Algorithm
Knuth–Eve instantiates **Algorithm** through a finite preprocessing procedure and a finite evaluator with a correctness invariant.
- Knuth–Plass Line-Breaking Algorithm Domain-specific is a kind of Algorithm
**`prime:algorithm` — proposed strict subsumption parent.** For a finite paragraph and fixed parameter contract, it is a definite terminating procedure with admissible input, effective steps, a breakpoint/line output, and correctness relative.
- Luhn Mod N Algorithm Domain-specific is a kind of Algorithm
Luhn Mod N specializes **Algorithm**: it is a finite deterministic generation/validation procedure with defined input, state, and output.
- Markov algorithm Domain-specific is a kind of Algorithm
The proposed strict upward parent is `prime:algorithm`.
- Maze generation algorithm Domain-specific is a kind of Algorithm
The proposed strict upward parent is `prime:algorithm`.
- Nearest-Neighbor Chain Algorithm Domain-specific is a kind of Algorithm
**Algorithm** is the proposed minimal parent: NN-chain is a strict algorithmic procedure with specified state, local-neighbor search, reciprocal-pair test, merge, and termination.
- Network Simplex Algorithm Domain-specific is a kind of Algorithm
**`prime:algorithm` — strict subsumption.** Network simplex is a definite iterative procedure mapping a feasible minimum-cost-flow instance and starting-basis construction to an optimal flow or an infeasibility/unboundedness disposition under.
- ΛProlog Domain-specific is a kind of Algorithm
The proposed strict upward parent is `prime:algorithm`.
- Pseudorandom Number Generator Domain-specific is a kind of Algorithm
PRNG is a specialization of `prime:algorithm`.
- Pseudospectral time-domain method Domain-specific is a kind of Algorithm
The proposed strict upward parent is `prime:algorithm`.
- PTAS Reduction Domain-specific is a kind of Algorithm
**Algorithm** is the strict parent because the reduction certificate is a finite polynomial-time procedure for transforming an instance and tolerance and recovering a source solution with a proved postcondition.
- QR Algorithm Domain-specific is a kind of Algorithm
QR Algorithm specializes `prime:algorithm`, the minimal proposed parent.
- Random sample consensus Domain-specific is a kind of Algorithm
The proposed strict upward parent is `prime:algorithm`.
- Reversible reference system propagation algorithm Domain-specific is a kind of Algorithm
The proposed strict upward parent is `prime:algorithm`.
- RNA22 Target-Prediction Algorithm Domain-specific is a kind of Algorithm
RNA22 strictly specializes **Algorithm**.
- Search Algorithm Domain-specific is a kind of Algorithm
A search algorithm is an algorithm specialized to exploring a generated state space by a frontier strategy until a goal or stopping report is reached.
- Self-organizing map Domain-specific is a kind of Algorithm
The proposed strict upward parent is `prime:algorithm`.
- Sequential decoding Domain-specific is a kind of Algorithm
The proposed strict upward parent is `prime:algorithm`.
- Sorting Algorithm Domain-specific is a kind of Algorithm
A sorting algorithm is an algorithm specialized to rearranging a finite sequence into a key-defined total order under explicit resource bounds.
- Steensgaard's algorithm Domain-specific is a kind of Algorithm
The proposed strict upward parent is `prime:algorithm`.
- Swedish Interactive Thresholding Algorithm Domain-specific is a kind of Algorithm
SITA is a strict specialization of **Algorithm**: it is a defined procedure mapping a perimetric test configuration and sequential patient responses to local threshold estimates and reliability information.
- Ternary search Domain-specific is a kind of Algorithm
The proposed strict upward parent is `prime:algorithm`.
- Topological Sorting Domain-specific is a kind of Algorithm
Topological sorting is an algorithm specialized to producing a linear extension of a precedence DAG or reporting a cycle in linear time.
- Tournament sort Domain-specific is a kind of Algorithm
The proposed strict upward parent is `prime:algorithm`.
- Tree Sort Domain-specific is a kind of Algorithm
The accepted reference-grade review places Tree Sort under Algorithm because the child instantiates or depends on the parent's broader structure while retaining its own constitutive identity.
- Trellis quantization Domain-specific is a kind of Algorithm
The proposed strict upward parent is `prime:algorithm`.
- Truth-table reduction Domain-specific is a kind of Algorithm
The proposed strict upward parent is `prime:algorithm`.
- Type Inference Domain-specific is a kind of Algorithm
Type inference is an algorithm specialized to generating and unifying typing constraints to return a principal type or a located type error.
- Unicode Collation Algorithm Domain-specific is a kind of Algorithm
Unicode Collation Algorithm is a strict domain-specific instance of **`prime:algorithm`**.
- Variable Elimination Domain-specific is a kind of Algorithm
Variable Elimination specializes `prime:algorithm`: inputs, ordered effective steps, exact output, termination, and resource bounds are explicit.
- Verlet Integration Domain-specific is a kind of Algorithm
Verlet Integration specializes `prime:algorithm`: it is a definite finite update procedure with inputs, outputs, accuracy, stability, and resource bounds.
- Yannakakis Algorithm for Acyclic Joins Domain-specific is a kind of Algorithm
**`prime:algorithm` — proposed strict subsumption parent.** Yannakakis has a finite input, effective ordered steps, termination, correctness condition, output, and resource bound.
- Yo-Yo Leader-Election Algorithm Domain-specific is a kind of Algorithm
The proposed strict parent is `prime:algorithm`: Yo-Yo is a finite, specified procedure mapping an identified connected network to a leader designation, with correctness and termination obligations.
- Ziggurat Algorithm Domain-specific is a kind of Algorithm
Ziggurat Algorithm is a strict specialization of `prime:algorithm`: it is a finite executable procedure with precomputation, random inputs, branching tests, and an output contract.
- Bailey–Borwein–Plouffe Formula Domain-specific presupposes Algorithm
The proposed minimal parent is `prime:algorithm` by strict compositional presupposition.
- Computability Prime presupposes Algorithm
Per dossier and file: computability is 'the boundary/meta-level relation that algorithm presupposes' — the existence-question (does an effective procedure exist at all?) over algorithm's central object.
Hierarchy paths (2) — routes to 2 parentless roots
- Algorithm → Function (Mapping)
- Algorithm → Iteration
Not to Be Confused With¶
- Algorithm is not Transformation because transformation is a general mapping rule from inputs to outputs; an algorithm is a sequence of deterministic steps that, when executed, performs a computation or transformation—transformation is the abstract mapping; algorithm is the executable procedure.
- Algorithm is not Recursion because recursion is the self-referential pattern where a function calls itself with reduced problem size; an algorithm may use recursion as a technique but can also use iteration or other control structures—recursion is a specific control pattern; algorithm is the broader executable procedure.
- Algorithm is not Heuristic because a heuristic is a practical rule or shortcut that produces good (but not guaranteed optimal) results efficiently; an algorithm is a step-by-step procedure that is deterministic and guaranteed to terminate with a specified output—heuristic sacrifices optimality for efficiency; algorithm guarantees correctness.
- Algorithm is not Iteration because iteration is the repetition of a process; an algorithm may use iteration but also uses other control structures (conditionals, recursion)—iteration is a control technique; algorithm is the full executable procedure.
- Algorithm is not Sequencing because sequencing is the ordering of actions in time; an algorithm specifies not just the sequence but the logical control flow, conditionals, and data transformations—sequencing is the ordering; algorithm is the complete procedure with logic and data structures.