{"ID":2830844,"CreatedAt":"2026-06-01T04:54:23.091178241Z","UpdatedAt":"2026-06-01T04:54:23.091178241Z","DeletedAt":null,"paper_url":"https://arxiv.org/abs/2512.09908","arxiv_id":"2512.09908","title":"Bayesian Networks, Markov Networks, Moralisation, Triangulation: a Categorical Perspective","abstract":"Moralisation and Triangulation are transformations allowing to switch between different ways of factoring a probability distribution into a graphical model. Moralisation allows to view a Bayesian network (a directed model) as a Markov network (an undirected model), whereas triangulation addresses the opposite direction. We present a categorical framework where these transformations are modelled as functors between a category of Bayesian networks and one of Markov networks. The two kinds of network (the objects of these categories) are themselves represented as functors from a `syntax' domain to a `semantics' codomain. Notably, moralisation and triangulation can be defined inductively on such syntax via functor pre-composition. Moreover, while moralisation is fully syntactic, triangulation relies on semantics. This leads to a discussion of the variable elimination algorithm, reinterpreted here as a functor in its own right, that splits the triangulation procedure in two: one purely syntactic, the other purely semantic. This approach introduces a functorial perspective into the theory of probabilistic graphical models, which highlights the distinctions between syntactic and semantic modifications.","short_abstract":"Moralisation and Triangulation are transformations allowing to switch between different ways of factoring a probability distribution into a graphical model. Moralisation allows to view a Bayesian network (a directed model) as a Markov network (an undirected model), whereas triangulation addresses the opposite direction...","url_abs":"https://arxiv.org/abs/2512.09908","url_pdf":"https://arxiv.org/pdf/2512.09908v1","authors":"[\"Antonio Lorenzin\",\"Fabio Zanasi\"]","published":"2025-12-10T18:36:30Z","proceeding":"cs.AI","tasks":"[\"cs.AI\",\"cs.LO\",\"math.CT\"]","methods":"[]","has_code":false}
