CONVERTBDDNODEABL(3)

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

✨ NAME ✨

ok so bestie, this is convertbddnodeabl from the CONVERTBDDNODEABL(3) manual page β€” it converts a bdd node to an abl expression. that's the whole vibe πŸ’…


🌸 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 lineage, no cap πŸŽ€


πŸ¦‹ SYNOPSIS πŸ¦‹

#include "bdd101.h"
chain_list *convertbddnodeabl( BddSystem, NameArray, IndexArray, BddNode )
  bddsystem βˆ—BddSystem;
  char     βˆ—βˆ—NameArray;
  bddindex  βˆ—IndexArray;
  bddnode   βˆ—BddNode;

πŸ’– PARAMETERS πŸ’–

  • BddSystem β€” the bdd system. yes bestie, the whole system.
  • NameArray β€” the array of names.
  • IndexArray β€” the array of indexes.
  • BddNode β€” the bdd node to convert. the star of the show πŸ‘‘

⭐ DESCRIPTION ⭐

convertbddnodeabl converts the bdd node BddNode to an abl expression in the bdd system BddSystem. if you hand it a null pointer, it just uses the default bdd system β€” lowkey convenient fr fr 🫢

the NameArray and IndexArray parameters are used to translate the variable nodes into atomic expressions. NameArray is a list of names. IndexArray does the correspondence between a bdd node index and a slot in the NameArray.

and if IndexArray is a null pointer? then the name of the bdd index BDD_INDEX_MIN is assumed to be the first slot of the NameArray, and so on. it's giving "we'll figure out the mapping ourselves" πŸ’€


🌈 RETURN VALUE 🌈

convertbddnodeabl returns a pointer to the abl expression translated. slay ✨


πŸ“ EXAMPLE πŸ“

#include "bdd101.h"
   bddsystem  βˆ—BddSystem;
   bddnode    βˆ—BddNode;
   chain_list βˆ—Expr;
   char       βˆ—NameArray[ 1 ];
   BddSystem = createbddsystem( 100, 1000, 100, 50000 );
   BddNode   = addbddvarlast( BddSystem );
   NameArray[ 0 ] = namealloc( "i0" );
   Expr = convertbddnodeabl( BddSystem, NameArray, (bddindex βˆ—)0,  BddNode );
   /* displays i0 */
   viewablexpr( Expr, ABL_VIEW_VHDL );
   freeablexpr( Expr );
   destroybddsystem( (bddsystem βˆ—)0 );

not the /* displays i0 */ just casually telling you what's about to happen 😭 it really does display i0 bestie, trust.


πŸ‘‘ SEE ALSO πŸ‘‘

bdd(1), abl(1).

go read those too, iykyk πŸ“š


πŸ’€ 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... tell them stuff, bestie, they're literally asking πŸ™ˆ


okay that's the whole page!! written by the ASIM/LIP6 girlies, dated October 1, 1997 (a vintage era, we respect it πŸ’œ), for manual page CONVERTBDDNODEABL(3). periodt. πŸ’…βœ¨πŸŽ€