ADDLISTBDD(3)

πŸ“¦ version 5.1.1-unstable-2025-02, in nixos 26.05, nixpkgs unstable

okay bestie, you found ADDLISTBDD(3) from the BDD functions manual, and we're about to make a chained list of BDDs look cute and make sense πŸ’…βœ¨

πŸ¦‹ ORIGIN πŸ¦‹

This software belongs to the ALLIANCE CAD SYSTEM developed by the ASIM team at LIP6 laboratory of UniversitΓ© Pierre et Marie CURIE, in Paris, France. Iconic academic roots, no cap πŸŽ“πŸŒΈ

✨ NAME ✨

addListBdd β€” adds a BDD to a chained list of BDDs. Short, sweet, and literally the whole point 🫢

πŸŽ€ SYNOPSIS πŸŽ€

#include "logmmm.h"
chain_list *addListBdd(pt,pBdd)
chain_list *pt;
pNode pBdd;

πŸ’– PARAMETERS πŸ’–

  • pt β€” the old chain_list pointer, aka the list you already have, bestie.
  • pBdd β€” the BDD to add. New node, who dis? πŸ’…

🌸 DESCRIPTION 🌸

addListBdd() adds pBdd to pt. It computes an optimal reordering on pt that minimizes the number of nodes when the applyBdd() function is called. That's the lowkey optimization magic ✨

🌈 EXAMPLE 🌈

Here's the whole example, copied exactly because we do not mess with code in this house 🫑:

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

initializeBdd(SMALL_BDD);
nodeA = createNodeTermBdd(3);
nodeB = createNodeTermBdd(3);
nodeC = createNodeTermBdd(4);
pt = NULL;
pt = addListBdd(pt,nodeA);
pt = addListBdd(pt,nodeB);
pt = addListBdd(pt,nodeC);
res = applyBdd(OR,pt);
displayBdd(res,1);

/* it will display
@res    INDEX = 4   LOW = @inter   HIGH = ONE
@inter  INDEX = 3   LOW = @nodeA   HIGH = ONE
@nodeA  INDEX = 2   LOW = ZERO        HIGH = ONE
*/
/* total number of nodes = 5 */

destroyBdd(1);

πŸ‘‘ SEE ALSO πŸ‘‘

πŸ› 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 if you spot something, tell the girlies, fr fr πŸ™πŸ’–

xoxo from the ASIM/LIP6 source, dated October 1, 1997, page ADDLISTBDD(3) πŸŒˆπŸ’…

πŸ“¦ where this page comes from