Celebi / Concepts

Algorithm

An Algorithm is a reusable, self-contained piece of analysis code: the how. It defines the computation once, without binding it to specific inputs or parameters.

Properties

  • Stateless and reusable — the same algorithm can back many tasks with different inputs and parameters.
  • Versioned by provenance — tasks record which algorithm (and which state of it) they were created from, so results stay interpretable months later.
  • Independently editable — refine the algorithm, then re-run only the tasks that depend on it.
# create an algorithm skeleton in the project
celebi-cli create-algorithm selection

An algorithm becomes concrete when it is instantiated as a Task.