pasteur.extras.synth.privbayes.implementation.maximal_parents

pasteur.extras.synth.privbayes.implementation.maximal_parents#

pasteur.extras.synth.privbayes.implementation.maximal_parents(domains, tau)[source]#

Given a set V containing hierarchical attributes (by int) and a tau score that is divided by the size of the domain, return a set of all possible combinations of attributes, such that if t > 1 there isn’t an attribute that can be indexed in a higher level

This is a modification of the original maximal_parents algorithm, that uses an unrolled counter to calculate the combinations, which avoids unecessary overhead incurred by the original version (set allocation, recursion, hashing).

Return type:

list[tuple[int, ...]]