Program generatywny to program wykonywalny, w którym każdy losowy wybór definiuje zmienną losową w powiązanym modelu prawdopodobieństwa. Wyobraźmy sobie, że krok po kroku rozwijamy wykonanie programu dokonującego losowych wyborów. Niech Xi będzie zmienną losową odpowiadającą i-temu losowemu wyborowi dokonanemu przez program; jak zwykle xi oznacza możliwą wartość Xi. Wywołajmy ω = {xi} ślad wykonania programu generatywnego – czyli sekwencja możliwych wartości dla losowych wyborów. Jednokrotne uruchomienie programu generuje jeden taki ślad, stąd określenie „program generatywny”. Przestrzeń wszystkich możliwych śladów wykonania Ω można postrzegać jako przestrzeń próbki modelu prawdopodobieństwa zdefiniowanego przez program generatywny. Rozkład prawdopodobieństwa po śladach można zdefiniować jako iloczyn prawdopodobieństw każdego indywidualnego losowego wyboru: P(ω) = ΠiP(xi|x1,…,xi-1). Jest to analogiczne do dystrybucji na światy w OUPM. Koncepcyjnie proste jest przekształcenie dowolnego OUPM w odpowiedni program generatywny. Ten program generatywny dokonuje losowych wyborów dla każdego wyrażenia liczbowego i dla wartości każdej podstawowej zmiennej losowej, której istnienie jest implikowane przez wyrażenia liczbowe. Główną dodatkową pracą, jaką musi wykonać program generatywny, jest utworzenie struktur danych, które reprezentują obiekty, funkcje i relacje możliwych światów w OUPM. Te struktury danych są tworzone automatycznie przez silnik wnioskowania OUPM, ponieważ OUPM zakłada, że każdy możliwy świat jest strukturą modelu pierwszego rzędu, podczas gdy typowy PPL nie przyjmuje takiego założenia. Obrazy na rysunku można wykorzystać do intuicyjnego zrozumienia rozkładu prawdopodobieństwa P(Ω): widzimy różne poziomy szumu, a na mniej zaszumionych obrazach widzimy również sekwencje liter o różnej długości.
Niech ω1 będzie śladem odpowiadającym obrazowi w prawym górnym rogu tej figury, zawierającym litery ocflwe. Gdybyśmy rozwinęli ten ślad ω1 do sieci bayesowskiej, miałby 4104 węzłów: 1 węzeł dla zmiennej n; 6 węzłów dla zmiennych letters[i]; 1 węzeł dla wariancji szumu; i 4096 węzłów dla pikseli w zaszumionym obrazie. Widzimy zatem, że ten program generatywny definiuje model prawdopodobieństwa otwartego wszechświata: liczba dokonywanych przez niego losowych wyborów nie jest ograniczona a priori, lecz zależy od wartości zmiennej losowej n.