cprover
miniBDD.cpp File Reference
#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
 

Macros

#define forall_nodes(it)
 

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.

Macro Definition Documentation

◆ forall_nodes

#define forall_nodes (   it)
Value:
for(nodest::const_iterator it=nodes.begin(); \
it!=nodes.end(); it++)

Definition at line 20 of file miniBDD.cpp.

Function Documentation

◆ and_fkt()

bool and_fkt ( bool  x,
bool  y 
)

Definition at line 397 of file miniBDD.cpp.

◆ cubes() [1/2]

std::string cubes ( const mini_bddt u)

Definition at line 604 of file miniBDD.cpp.

◆ cubes() [2/2]

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

Definition at line 579 of file miniBDD.cpp.

◆ equal_fkt()

bool equal_fkt ( bool  x,
bool  y 
)

Definition at line 370 of file miniBDD.cpp.

◆ exists()

mini_bddt exists ( const mini_bddt u,
const unsigned  var 
)

Definition at line 562 of file miniBDD.cpp.

◆ OneSat()

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

Definition at line 618 of file miniBDD.cpp.

◆ or_fkt()

bool or_fkt ( bool  x,
bool  y 
)

Definition at line 407 of file miniBDD.cpp.

◆ restrict()

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

Definition at line 557 of file miniBDD.cpp.

◆ substitute()

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

Definition at line 569 of file miniBDD.cpp.

◆ xor_fkt()

bool xor_fkt ( bool  x,
bool  y 
)

Definition at line 380 of file miniBDD.cpp.