class documentation

class MSSSolver: (source)

View In Hierarchy

Code from:https://raw.githubusercontent.com/Z3Prover/z3/master/examples/python/mus/mss.py MIT licensed The following is a procedure for enumerating maximal satisfying subsets. It uses maximal resolution to eliminate cores from the state space. Whenever the hard constraints are satisfiable, it finds a model that satisfies the maximal number of soft constraints. During this process it collects the set of cores that are encountered. It then reduces the set of soft constraints using max-resolution in the style of [Narodytska & Bacchus, AAAI'14]. In other words, let F1, ..., F_k be a core among the soft constraints F1,...,F_n Replace F1,.., F_k by F1 or F2, F3 or (F2 & F1), F4 or (F3 & (F2 & F1)), ..., F_k or (F_{k-1} & (...)) Optionally, add the core ~F1 or ... or ~F_k to F The current model M satisfies the new set F, F1,...,F_{n-1} if the core is minimal. Whenever we modify the soft constraints by the core reduction any assignment to the reduced set satisfies a k-1 of the original soft constraints.

Method __init__ Undocumented
Method add_def Undocumented
Method c_var Undocumented
Method enumerate_sets Undocumented
Method grow Undocumented
Method relax_core Undocumented
Method resolve_core Undocumented
Method update_unknown Undocumented
Instance Variable idcache Undocumented
Instance Variable mcs Undocumented
Instance Variable mcs_explain Undocumented
Instance Variable model Undocumented
Instance Variable mss Undocumented
Instance Variable n Undocumented
Instance Variable nmcs Undocumented
Instance Variable orig_soft_vars Undocumented
Instance Variable s Undocumented
Instance Variable soft Undocumented
Instance Variable soft_vars Undocumented
Instance Variable unknown Undocumented
Instance Variable varcache Undocumented
def __init__(self, hard, soft): (source)

Undocumented

def add_def(self, fml): (source)

Undocumented

def c_var(self, i): (source)

Undocumented

def enumerate_sets(self): (source)

Undocumented

def grow(self): (source)

Undocumented

def relax_core(self, Fs): (source)

Undocumented

def resolve_core(self, core): (source)

Undocumented

def update_unknown(self): (source)

Undocumented

idcache: dict = (source)

Undocumented

Undocumented

mcs_explain: dict = (source)

Undocumented

model = (source)

Undocumented

Undocumented

Undocumented

Undocumented

orig_soft_vars = (source)

Undocumented

Undocumented

soft = (source)

Undocumented

soft_vars = (source)

Undocumented

unknown = (source)

Undocumented

varcache: dict = (source)

Undocumented