networkx.generators.joint_degree_seq.is_valid_directed_joint_degree¶
-
is_valid_directed_joint_degree
(in_degrees, out_degrees, nkk)[source]¶ Checks whether the given directed joint degree input is realizable
Parameters: - in_degrees (list of integers) – in degree sequence contains the in degrees of nodes.
- out_degrees (list of integers) – out degree sequence contains the out degrees of nodes.
- nkk (dictionary of dictionary of integers) – directed joint degree dictionary. for nodes of out degree k (first level of dict) and nodes of in degree l (seconnd level of dict) describes the number of edges.
Returns: returns true if given input is realizable, else returns false.
Return type: boolean
Notes
Here is the list of conditions that the inputs (in/out degree sequences, nkk) need to satisfy for simple directed graph realizability:
- Condition 0: in_degrees and out_degrees have the same length
- Condition 1: nkk[k][l] is integer for all k,l
- Condition 2: sum(nkk[k])/k = number of nodes with partition id k, is an
- integer and matching degree sequence
- Condition 3: number of edges and non-chords between k and l cannot exceed
- maximum possible number of edges
References
- [1] B. Tillman, A. Markopoulou, C. T. Butts & M. Gjoka,
- “Construction of Directed 2K Graphs”. In Proc. of KDD 2017.