cprover
Loading...
Searching...
No Matches
miniBDD.cpp File Reference

A minimalistic BDD library, following Bryant's original paper and Andersen's lecture notes. More...

#include "miniBDD.h"
#include <util/invariant.h>
#include <iostream>
Include dependency graph for miniBDD.cpp:

Go to the source code of this file.

Classes

class  mini_bdd_applyt
class  restrictt

Functions

bool equal_fkt (bool x, bool y)
bool xor_fkt (bool x, bool y)
bool and_fkt (bool x, bool y)
bool or_fkt (bool x, bool y)
mini_bddt restrict (const mini_bddt &u, unsigned var, const bool value)
mini_bddt exists (const mini_bddt &u, const unsigned var)
mini_bddt substitute (const mini_bddt &t, unsigned var, const mini_bddt &tp)
void cubes (const mini_bddt &u, const std::string &path, std::string &result)
std::string cubes (const mini_bddt &u)
bool OneSat (const mini_bddt &v, std::map< unsigned, bool > &assignment)

Detailed Description

A minimalistic BDD library, following Bryant's original paper and Andersen's lecture notes.

Definition in file miniBDD.cpp.

Function Documentation

◆ and_fkt()

bool and_fkt ( bool x,
bool y )

Definition at line 391 of file miniBDD.cpp.

◆ cubes() [1/2]

std::string cubes ( const mini_bddt & u)

Definition at line 596 of file miniBDD.cpp.

◆ cubes() [2/2]

void cubes ( const mini_bddt & u,
const std::string & path,
std::string & result )

Definition at line 571 of file miniBDD.cpp.

◆ equal_fkt()

bool equal_fkt ( bool x,
bool y )

Definition at line 364 of file miniBDD.cpp.

◆ exists()

mini_bddt exists ( const mini_bddt & u,
const unsigned var )

Definition at line 556 of file miniBDD.cpp.

◆ OneSat()

bool OneSat ( const mini_bddt & v,
std::map< unsigned, bool > & assignment )

Definition at line 610 of file miniBDD.cpp.

◆ or_fkt()

bool or_fkt ( bool x,
bool y )

Definition at line 401 of file miniBDD.cpp.

◆ restrict()

mini_bddt restrict ( const mini_bddt & u,
unsigned var,
const bool value )

Definition at line 551 of file miniBDD.cpp.

◆ substitute()

mini_bddt substitute ( const mini_bddt & t,
unsigned var,
const mini_bddt & tp )

Definition at line 562 of file miniBDD.cpp.

◆ xor_fkt()

bool xor_fkt ( bool x,
bool y )

Definition at line 374 of file miniBDD.cpp.