Overview
Arithmetic Coding narrows a numeric interval for each symbol according to its probability, often compressing close to entropy limits.
Encodes a message as a number inside a probability interval.
Compact metadata for implementation and discovery.
Arithmetic Coding narrows a numeric interval for each symbol according to its probability, often compressing close to entropy limits.
Quick facts
Runtime and memory behavior at a glance.
Best
O(n)
Average
O(n)
Worst
O(n)
Space
O(1)
range_next = range_current * probability(symbol | context)Shrinks the active numeric interval according to the probability of each symbol.
Show a probability interval shrinking after each symbol.
Arithmetic Coding operates in O(n) time and O(1) space within the Entropy Coding family. Key governing relation: range_next = range_current * probability(symbol | context). Often compared with Huffman Coding and Prediction by Partial Matching.
What each reference supports for this entry.
Reference for interval narrowing and arithmetic-code emission.
Open sourceCompression textbook support for Arithmetic Coding's coding model, decoder behavior, and implementation tradeoffs.
Open sourceGood next jumps from the relationship graph, ranked for useful discovery.
Compression · Foundation
Arithmetic coding can represent fractional-bit symbol probabilities more closely.
Compare with thisCompression · Extended
rANS and arithmetic coding are entropy coders that represent fractional symbol probabilities with different state mechanics.
Compare with thisCompression · Extended
Context-mixing predictors are commonly paired with arithmetic or range-style coders to encode probability estimates.
Compare with thisArithmetic coding can represent fractional-bit symbol probabilities more closely.
Range coding is an implementation approach related to arithmetic coding.