Definitions
- ALGORITHM
- An algorithm is a finite description of steps that transforms a valid input into an output.
- ALGORITHMIC PROBLEM
- An algorithmic problem is a description of valid inputs, required outputs, and the condition that connects every correct output with its input.
- BIG O NOTATION
- Big O notation gives an asymptotic upper bound: f(n) = O(g(n)) if, from some point onward, f(n) is no larger than a constant times g(n).
- BIG OMEGA NOTATION
- Big Omega notation gives an asymptotic lower bound: f(n) = Ω(g(n)) if, from some point onward, f(n) is at least a constant times g(n).
- LITTLE O NOTATION
- little o notation gives a strict upper bound: f(n) = o(g(n)) if the ratio of f(n) to g(n) tends to zero.
- LITTLE OMEGA NOTATION
- little omega notation gives a strict lower bound: f(n) = ω(g(n)) if the ratio of f(n) to g(n) tends to infinity.
- LOOP INVARIANT
- A loop invariant is a statement that is true before the loop starts and remains true after every iteration.
- PARTIAL CORRECTNESS
- Partial correctness means: if the algorithm terminates on a valid input, then its result satisfies the postcondition of the problem.
- PROPER SUBSETOpen article
- A proper subset is a subset that is not equal to the original set and therefore contains fewer elements.
- RECURRENCE RELATION
- A recurrence relation is a formula that expresses the cost of a problem through the cost of smaller problems of the same kind and the work done outside those subproblems.
- SETOpen article
- A set in mathematics is a collection of unique elements, which may be numbers, symbols, or other objects.
- SPACE COMPLEXITY
- Space complexity is a function that estimates the extra memory used by an algorithm as a function of input size.
- TERMINATION
- Termination means: the algorithm finishes on every valid input.
- THETA NOTATION
- Theta notation gives a tight asymptotic estimate up to constant factors: f(n) = Θ(g(n)) if both f(n) = O(g(n)) and f(n) = Ω(g(n)) hold.
- TIME COMPLEXITY
- Time complexity is a function that estimates the number of elementary operations performed by an algorithm as a function of input size.
- TOTAL CORRECTNESS
- Total correctness means partial correctness together with termination.