In programming languages and machine learning, Bayesian program synthesis (BPS) is a program synthesis technique where Bayesian probabilistic programs automatically construct new Bayesian probabilistic programs.[1] This approach stands in contrast to routine practice in probabilistic programming where human developers manually write new probabilistic programs.