---
name: "simplifDcOneBdd"
section: "3"
platform: "linux"
package: "alliance"
version: "5.1.1-3"
release: "Debian 10 (Buster)"
platforms: ["linux"]
url: "https://new.carta.tech/simplifDcOneBdd"
---

# simplifDcOneBdd(3)

simplifies a BDD with don't cares on its on-set part

## NAME

**simplifDcOneBdd** - simplifies a BDD with don't cares on its on-set part

## SYNOPSYS

```
#include "logmmm.h"
pNode simplifDcOneBdd(pBdd1,pBdd2)
pNode pBdd1;
pNode pBdd2;
```

## PARAMETERS

- *pBdd1*

  BDD to simplify

- *pBdd2*

  "don't care" function

## DESCRIPTION

**simplifDcOneBdd()** simplifies *pBdd1* with *pBdd2*. *pBdd2* must be included imperatively in the on-set part of pBdd1. This function returns a BDD that depends to the order of the BDD.

## EXAMPLE

```
#include "mutnnn.h"		/* mbk utilities */
#include "logmmm.h"
pNode nodeA,nodeB;
pNode res,res1,res2;
initializeBdd(SMALL_BDD);
nodeA = createNodeTermBdd(3);
nodeB = createNodeTermBdd(3);
res1 = applyBinBdd(XOR,nodeA,nodeB);		/* res1 = (XOR a b) */
res2 = applyBinBdd(AND,notBdd(nodeA),nodeB);	/* res2 = (AND (not a) b) */
res = simplifDcOneBdd(res1,res2);	/* res1 and res2 = res2 */
/* res = (AND a (not b)) */
destroyBdd(1);
```

## SEE ALSO

[**log**(1)](/log/1.md), [**bdd**(1)](/bdd/1.md), [**simplifDcZeroBdd**(3)](/simplifDcZeroBdd/3.md), [**constraintBdd**(3)](/constraintBdd/3.md), [**composeBdd**(3)](/composeBdd/3.md), [**upVarBdd**(3)](/upVarBdd/3.md).
