The SLP generator of all RPDAGs can be found in rpdags/rpdag.slp while
a Prolog version can be found in rpdag.pl. These are based on
the additive operations presented in [Acid de CamposAcid de Campos2003, p.467,Table 2].
The number of RPDAGs according to our programs are shown in
Table 2. Also in the table are shown the number of
BNs, second row, and number of equivalence classes, in the last row.
These are taken from [Gillispie PerlmanGillispie Perlman2001]
The likelihood used is an extension of the likelihood used in the case of BNs. Similarly, RPDAGs are displayed with the same routines as BNs. These have been extended to display unidirectional arcs as links of black colour. To create a small Markov chain you can use query ?- run_test. defined in file run_test.pl. To visualise the models while creating the same chain use ?- run_disp. from file run_disp.pl.
RPDAGs are represented by terms of the form: rpdag(Nodes,Dag,BiD).
is a list of nodes to node information; a triplet containing
the children the parents and the neighbours of the node. Neighbours
are connected by bidirectional links.
is the Directed Acyclic
Graph representing the directed part of the RPDAG.
is the
graph containing the bidirectional links of the RPDAG.
Both
and
are manipulated using the Prolog ugraph
library.