  We derive an exact and efficient Bayesian regression algorithm for piecewise
constant functions of unknown segment number, boundary location, and levels. It
works for any noise and segment level prior, e.g. Cauchy which can handle
outliers. We derive simple but good estimates for the in-segment variance. We
also propose a Bayesian regression curve as a better way of smoothing data
without blurring boundaries. The Bayesian approach also allows straightforward
determination of the evidence, break probabilities and error estimates, useful
for model selection and significance and robustness studies. We discuss the
performance on synthetic and real-world examples. Many possible extensions will
be discussed.
