Definition
An exact dynamic-programming algorithm that computes symbol- or bit-wise a posteriori probabilities on a finite-state trellis by performing forward and backward recursions over state metrics and branch metrics; produces soft outputs (posterior probabilities or log‑likelihood ratios) for each symbol given a probabilistic channel and an explicit state model.
Principle
Principle
Marginal posterior probabilities for individual symbols can be obtained efficiently by combining forward (α) and backward (β) state recursions with local branch metrics (γ) rather than enumerating all sequence probabilities.
Demonstration
Demonstration
Illustrative scenario: a binary convolutional code with known trellis and a received noisy sequence. Compute α_t(state) forward for t=1..T, compute β_t(state) backward for t=T..1, form symbol posterior Pr(u_t|y)=Σ_{state transitions consistent with u_t} α_{t−1}(s')·γ_t(s'→s)·β_t(s). The result yields bitwise posterior probabilities and LLRs usable as soft inputs to further decoders.
Misapplication
Misapplication
Treating BCJR output as exact when the trellis or channel model is mismatched (e.g., wrong noise variance or incorrect state transitions) is an error; likewise substituting Viterbi sequence estimates for BCJR symbol posteriors misinterprets sequence‑MAP output as symbol‑MAP beliefs.
Consequence
Consequence
When applied with the correct trellis and channel model, BCJR provides exact symbolwise MAP probabilities for that model and enables soft‑input iterative decoding; when misapplied (model mismatch or wrong trellis), reported posteriors can be systematically biased and degrade any downstream soft processing.
Reversal
Reversal
The algorithm’s exactness depends on a finite, tractable state space and an accurate probabilistic model; for very large or continuous state spaces one must approximate (reduced‑state BCJR, particle methods) and exact symbol‑MAP guarantees no longer hold.
Boundary
Boundary
Clearly within: decoding a finite‑memory convolutional code or inference in a finite‑state hidden Markov model with known channel statistics. Boundary case: a channel with memory but uncertain parameters where BCJR can run using estimated parameters but posteriors reflect that uncertainty. Clearly outside: using BCJR when no explicit finite‑state model exists (purely memoryless symbol detection where per‑symbol MAP is trivial without trellis).
Semantic Tension
Semantic Tension
Exact marginalization (statistical optimality per model) versus computational cost and model accuracy: exact BCJR posteriors are best under the assumed model but high cost or model mismatch can make approximate or alternative methods preferable.
Synthesis
Synthesis
BCJR converts a global sequence probability problem into local, exact symbol posteriors by dynamic programming; its practical value depends as much on correct model specification and state‑space size as on its formal optimality.