Details
ResourceFunction["BranchialGraphs"] takes the same options as
Graph.
Two vertices vj and vk are have branch-like separation if g contains a vertex vi and a pair of edges vi→vj and vi→vk.
Branch-like separation is necessary, but not sufficient, for an edge between vj and vk to appear in a branchial graph of g.
A foliation of the vertices of g is a partitioning of g-vertices into time-ordered subsets (preferably also an exact cover).
Vertices vj and vk must also satisfy a simultaneity condition, which depends on choice of a foliation.
ResourceFunction["BranchialGraphs"] takes an additional option of the form: "Foliation" → {{v1,v2,…,vn}, {vn+1,vn+2,…,vn+m}, …, {vx,vx+1,…,vx+y}}.
The default
"Foliation" lists a vertex in a subset as soon as its entire
VertexInComponent is covered by preceding subsets.
If a specified
"Foliation" lists a vertex before its entire
VertexInComponent is covered by preceding subsets, the algorithm will not give a valid result.
The positions of subsets in the foliation determine their
Keys in the output of
ResourceFunction["BranchialGraphs"].
Provided the foliation subset at time ti includes vertices vj and vk from g, then the branchial graph at time ti will have an edge between vj and vk if and only if vj and vk have branch-like separation.