utils package#

Submodules#

utils.BDDDOTParser module#

class utils.BDDDOTParser.BDDDOTParser(benchmark: Benchmark, multi_output: bool = True)[source]#

Bases: DDParser

A class to parse a BDD from a DOT file. The DOT file is constructed using ABC.

get_log() List[Dict[str, Any]] | Dict[str, Any][source]#
parse() BDDCollection[source]#

Parses the benchmark. First, the benchmark is written to a file in the ABC directory. Then, the DOT files are generated and read from file. Finally, the DOT files are converted into BDDs. :return:

utils.BDDParser module#

class utils.BDDParser.BDDModule[source]#

Bases: object

class utils.BDDParser.BDDParser(file_path: Path)[source]#

Bases: object

A class to parse a BDD from a BDD file.

static from_string(content: str) BDDModule[source]#
get_log() Dict[str, Any][source]#

utils.BenchmarkReader module#

class utils.BenchmarkReader.BenchmarkReader(file_path: Path)[source]#

Bases: object

read() BooleanFunctionCollection[source]#

Reads the benchmark from file. :return: A Boolean function collection.

utils.DDParser module#

class utils.DDParser.DDParser(benchmark: Benchmark)[source]#

Bases: ABC

abstract parse() DDCollection[source]#

utils.InstanceFileReader module#

class utils.InstanceFileReader.InstanceFileReader(simulation_file_name: str)[source]#

Bases: object

parse()[source]#

utils.KLUTParser module#

class utils.KLUTParser.KLUTParser(benchmark: Benchmark, K: int, G: int)[source]#

Bases: DDParser

parse() BDDTopology[source]#

utils.Log module#

class utils.Log.Log(log_file_name: str | None = None)[source]#

Bases: object

add(content)[source]#
add_json(content: Dict[str, Any])[source]#

utils.PLAParser module#

class utils.PLAParser.PLA[source]#

Bases: object

class utils.PLAParser.PLAParser(file_path: Path)[source]#

Bases: object

utils.Parser module#

class utils.Parser.Parser[source]#

Bases: ABC

abstract parse() BooleanFunction[source]#

utils.VerilogFix module#

class utils.VerilogFix.VerilogFix(specification: VerilogBenchmark, fixed_file_path: Path)[source]#

Bases: object

fix(literals: List[LITERAL])[source]#

utils.VerilogParser module#

class utils.VerilogParser.VerilogModule[source]#

Bases: object

copy()[source]#
class utils.VerilogParser.VerilogParser(file_path: Path)[source]#

Bases: object

utils.Z3Converter module#

class utils.Z3Converter.AstRefKey(n)[source]#

Bases: object

class utils.Z3Converter.Z3Converter[source]#

Bases: object

static simple_paths_to_z3(one_paths: List[List[str]]) Bool[source]#

Returns a formula in Verilog to a formula compatible with Z3. :param one_paths: :return:

static verilog_to_tree(verilog_formula: str)[source]#
static verilog_to_z3(verilog_formula: str)[source]#
static z3_to_str(z3_formula: Bool) str[source]#

utils.Z3Tools module#

class utils.Z3Tools.AstRefKey(n)[source]#

Bases: object

utils.Z3Tools.get_literals(f)[source]#

utils.config module#

Module contents#