CONSTRAINTBDD(3)

πŸ“¦ version 5.1.1, in fedora 43, fedora 44

πŸ’– CONSTRAINTBDD(3) πŸ’–

okay bestie, welcome to another episode of girls who read the BDD functions manual for fun β€” this one's constraintBdd(3) and it's lowkey iconic ✨


🌸 ORIGIN 🌸

so this software? it belongs to the ALLIANCE CAD SYSTEM, which was developed by the ASIM team at the LIP6 laboratory of UniversitΓ© Pierre et Marie CURIE, in Paris, France πŸ‡«πŸ‡· (yes the whole vibe is very chic, we love that for them).


✨ NAME ✨

constraintBdd β€” restricts a BDD to another BDD. it's giving "hold my hand and stay in your lane" 🫢


πŸŽ€ SYNOPSIS πŸŽ€

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

πŸ¦‹ PARAMETERS πŸ¦‹

  • pBdd1 β€” the BDD you're restricting, the main character of this operation πŸ’…
  • pBdd2 β€” the constraint BDD, aka the one doing the restricting (the rules are coming from her)

🌈 DESCRIPTION 🌈

so constraintBdd() constructs the graph for the function you get by restricting pBdd1 on pBdd2. no cap.

and like, when is this useful?? literally when a primary input is stuck at 0 or 1 β€” that's the exact scenario. fr fr, it's built for that moment πŸ’€


πŸ“ EXAMPLE πŸ“

#include "mutnnn.h"      /* mbk utilities */
#include "logmmm.h"
pNode nodeA,nodeB;
pNode res;

initializeBdd(SMALL_BDD);
nodeA = createNodeTermBdd(3);
nodeB = createNodeTermBdd(3);
res = applyBinBdd(OR,nodeA,nodeB); /* res = (OR a b)
res = constraintBdd(res,nodeA);         /* a = 1 */
displayBdd(res,1);

/* it will display
@res   ONE
*/

destroyBdd(1);

and yes bestie, it really does display @res ONE β€” the way that output just ate πŸ˜­πŸ‘‘


πŸ‘‘ SEE ALSO πŸ‘‘

log(1), bdd(1), simplifDcOneBdd(3), simplifDcZeroBdd(3), composeBdd(3), applyBdd(3), notBdd(3), applyBinBdd(3), addListBdd(3), displayBdd(3), createNodeTermBdd(3).

the whole friend group, all together, we love a supportive squad πŸ’œ


πŸ™ˆ BUG REPORT πŸ™ˆ

This tool is under development at the ASIM department of the LIP6 laboratory. We need your feedback to improve documentation and tools.

so like, it's under development bestie β€” meaning your feedback is highkey wanted. don't be shy, tell them everything 🌸


and that's the whole page! this one came from ASIM/LIP6 and it's dated October 1, 1997 β€” a true vintage queen from the BDD functions era πŸ’–βœ¨πŸŽ€