CBMC
Loading...
Searching...
No Matches
Public Member Functions | Static Public Attributes | Private Member Functions | Private Attributes | Friends | List of all members
guard_bddt Class Reference

#include <guard_bdd.h>

+ Collaboration diagram for guard_bddt:

Public Member Functions

 
 
 
 
guard_bddtadd (const exprt &expr)
 
 
 
  Return guard => dest or a simplified variant thereof if either guard or dest are trivial.
 
 
 
 
  Returns true if operator|= with other_guard may result in a simpler expression.
 

Static Public Attributes

  BDDs are always in a simplified form and thus no further simplification is required after calls to as_expr().
 

Private Member Functions

 

Private Attributes

 
bddt  bdd
 

Friends

  Transforms g1 into g1' such that ‘g1’ & g2 => g1 => g1'` and returns a reference to g1.
 
 

Detailed Description

Definition at line 21 of file guard_bdd.h.

Constructor & Destructor Documentation

◆  guard_bddt() [1/3]

guard_bddt::guard_bddt ( const exprte,
bdd_exprtmanager 
)

Definition at line 19 of file guard_bdd.cpp.

◆  guard_bddt() [2/3]

guard_bddt::guard_bddt ( const guard_bddtother )
inline

Definition at line 25 of file guard_bdd.h.

◆  guard_bddt() [3/3]

guard_bddt::guard_bddt ( bdd_exprtmanager,
bddt  bdd 
)
inlineprivate

Definition at line 76 of file guard_bdd.h.

Member Function Documentation

◆  add()

guard_bddt & guard_bddt::add ( const exprtexpr )

Definition at line 64 of file guard_bdd.cpp.

◆  append()

guard_bddt & guard_bddt::append ( const guard_bddtguard )

Definition at line 58 of file guard_bdd.cpp.

◆  as_expr()

exprt guard_bddt::as_expr ( ) const

Definition at line 82 of file guard_bdd.cpp.

◆  disjunction_may_simplify()

bool guard_bddt::disjunction_may_simplify ( const guard_bddtother_guard )
inline

Returns true if operator|= with other_guard may result in a simpler expression.

For bdd_exprt we always simplify maximally.

Definition at line 67 of file guard_bdd.h.

◆  guard_expr()

exprt guard_bddt::guard_expr ( exprt  expr ) const

Return guard => dest or a simplified variant thereof if either guard or dest are trivial.

Definition at line 38 of file guard_bdd.cpp.

◆  is_false()

bool guard_bddt::is_false ( ) const
inline

Definition at line 49 of file guard_bdd.h.

◆  is_true()

bool guard_bddt::is_true ( ) const
inline

Definition at line 44 of file guard_bdd.h.

◆  operator!()

guard_bddt guard_bddt::operator! ( ) const
inline

Definition at line 60 of file guard_bdd.h.

◆  operator=() [1/2]

guard_bddt & guard_bddt::operator= ( const guard_bddtother )

Definition at line 24 of file guard_bdd.cpp.

◆  operator=() [2/2]

guard_bddt & guard_bddt::operator= ( guard_bddt &&  other )

Definition at line 31 of file guard_bdd.cpp.

Friends And Related Symbol Documentation

◆  operator-=

const guard_bddtg2 
)
friend

Transforms g1 into g1' such that ‘g1’ & g2 => g1 => g1'` and returns a reference to g1.

Definition at line 70 of file guard_bdd.cpp.

◆  operator|=

const guard_bddtg2 
)
friend

Definition at line 76 of file guard_bdd.cpp.

Member Data Documentation

◆  bdd

bddt guard_bddt::bdd
private

Definition at line 74 of file guard_bdd.h.

◆  is_always_simplified

constexpr bool guard_bddt::is_always_simplified = true
staticconstexpr

BDDs are always in a simplified form and thus no further simplification is required after calls to as_expr().

This can vary according to the guard implementation.

Definition at line 38 of file guard_bdd.h.

◆  manager

bdd_exprt& guard_bddt::manager
private

Definition at line 73 of file guard_bdd.h.


The documentation for this class was generated from the following files:

AltStyle によって変換されたページ (->オリジナル) /