ADDBDDASSOC(3)

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

πŸ’… ADDBDDASSOC(3) β€” BDD FUNCTIONS πŸ’…

okay so bestie, this is the manual page for addbddassoc β€” yes, the little function that makes a new association variables thing. It's giving small function, big main character energy. Let's go. 🫢


✨ NAME ✨

addbddassoc β€” creates a new association variables. periodt. πŸ’…

🌈 ORIGIN 🌈

This software belongs to the ALLIANCE CAD SYSTEM, developed by the ASIM team at the LIP6 laboratory of UniversitοΏ½ Pierre et Marie CURIE, in Paris, France.

πŸ¦‹ SYNOPSIS πŸ¦‹

#include "bdd101.h"
bddassoc βˆ—addbddassoc( BddSystem )
  bddsystem  βˆ—BddSystem;

πŸŽ€ PARAMETERS πŸŽ€

  • BddSystem β€” the bdd system. that's it. that's the parameter. πŸ’–

πŸ‘‘ DESCRIPTION πŸ‘‘

addbddassoc creates a new association variables in the bdd system BddSystem. If a null pointer is given, the default bdd system is used. no cap, that's the whole vibe. ✨

πŸ”₯ RETURN VALUE πŸ”₯

addbddassoc returns a pointer to the new variable association. slay. 🫢

πŸ’€ ERRORS πŸ’€

  • "no more variable association, error !" β€” there is no variable association number left. and yes, the space before the exclamation is part of the string, bestie. πŸ™ˆ

🌸 EXAMPLE 🌸

okay here's the full example, copied exactly because we do not mess with code in this group chat:

       #include "bdd101.h"
          bddsystem  βˆ—BddSystem;
          bddcircuit βˆ—BddCircuit;
          bddnode    βˆ—BddNode;
          bddnode    βˆ—BddSubst;
          bddnode    βˆ—BddVariable;
          bddassoc   βˆ—Assoc;
          chain_list βˆ—Expr;
          bddvar         Variable;
          BddSystem  = createbddsystem( 100, 1000, 100, 50000 );
          BddCircuit = createbddcircuit( "hello_world", 10, 10, BddSystem );
          Expr = createablbinexpr( ABL_AND,
                                   createablatom( "i0" ),
                                   createablatom( "i1" ) );
          BddNode = addbddcircuitabl( BddCircuit, Expr );
          freeablexpr( Expr );
          Expr = createablbinexpr( ABL_OR,
                                   createablatom( "i2" ),
                                   createablatom( "i3" ) );
          BddSubst = addbddcircuitabl( BddCircuit, Expr );
          freeablexpr( Expr );
          BddVariable = searchbddcircuitin( (bddcircuit βˆ—)0, "i0" );
          Variable = getbddvarbyindex( (bddsystem βˆ—)0, BddVariable->INDEX );
          Assoc = addbddassoc( (bddsystem βˆ—)0 );
          addbddnodeassoc( (bddsystem βˆ—)0, Assoc, Variable, BddSubst );
          BddNode = substbddnodeassoc( (bddsystem βˆ—)0, BddSubst, Assoc );
          delbddassoc( (bddsystem βˆ—)0, Assoc );
          Expr = convertbddcircuitabl( BddCircuit, BddNode );
          /* displays ((i3 or i2) and i1) */
          viewablexpr( Expr, ABL_VIEW_VHDL );
          freeablexpr( Expr );
          destroybddassoc( (bddsystem βˆ—)0 );
          destroybddsystem( (bddsystem βˆ—)0 );
          destroybddcircuit( (bddcircuit βˆ—)0 );

🧚 SEE ALSO 🧚

  • bdd(1) β€” go read that too, bestie. πŸ’œ

πŸ› BUG REPORT πŸ›

This tool is under development at the ASIM department of the LIP6 laboratory.

We need your feedback to improve documentation and tools. fr fr, they want the feedback. 🫢


source/version: ASIM/LIP6 β€” date: October 1, 1997. okay bye bestie, stay iconic! πŸ’–βœ¨
πŸ“¦ where this page comes from