EXISTBDDNODEASSOCOFF(3)

๐Ÿ“ฆ version 5.1.1-unstable-2025-02, in nixos 26.05, nixpkgs unstable

๐Ÿ’– existbddnodeassocoff โ€” the manual page (EXISTBDDNODEASSOCOFF(3)) ๐Ÿ’–

okay bestie, buckle up โ€” we're reading the <pink>existbddnodeassocoff</pink> page together, and it's literally about existential quantification. iconic behavior. โœจ

๐ŸŒธ NAME ๐ŸŒธ

  • existbddnodeassocoff โ€” computes an existential quantification. That's the whole name-line vibe, no cap. ๐Ÿ’…

๐Ÿฆ‹ 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.

Web : http://asim.lip6.fr/recherche/alliance/

E-mail : alliance-users@asim.lip6.fr

โญ SYNOPSIS โญ

Here's the summoning spell:

#include "bdd101.h"
bddnode โˆ—existbddnodeassocoff( BddSystem, BddNode, BddAssoc )
  bddsystem โˆ—BddSystem;
  bddnode   โˆ—BddNode;
  bddassoc  โˆ—BddAssoc;

๐ŸŽ€ PARAMETERS ๐ŸŽ€

  • BddSystem โ€” the bdd system. Your main-character system, basically.
  • BddNode โ€” the bdd node to treat. This is the node getting the existential-quantification treatment.
  • BddAssoc โ€” the variable association. The association that controls which variables are in the mix.

๐ŸŒˆ DESCRIPTION ๐ŸŒˆ

okay so <cyan>existbddnodeassocoff</cyan> suppresses, in the bdd node <pink>BddNode</pink> complemented, all the variables associated with something in the variable association <pink>BddAssoc</pink>, inside the bdd system <pink>BddSystem</pink>. If a null pointer is given, the default bdd system is used. periodt. ๐Ÿ’…

๐Ÿ’œ RETURN VALUE ๐Ÿ’œ

It returns the computed bdd node. That's it โ€” the computed bdd node, served fresh. โœจ

๐Ÿ’€ ERRORS ๐Ÿ’€

"bad variable association xxx, error !"

This means the <pink>BddAssoc</pink> parameter must be a valid variable association. No fake associations, bestie โ€” it has to be valid.

๐Ÿ“ EXAMPLE ๐Ÿ“

Here's a full little demo:

#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_NAND,
                            createablatom( "i0" ),
                            createablatom( "i1" ) );
   BddNode = 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, BddSystem->ONE );
   BddNode = existbddnodeassocoff( (bddsystem โˆ—)0, BddNode, Assoc );
   Expr = convertbddcircuitabl( BddCircuit, BddNode );
   /* displays (not i1) */
   viewablexpr( Expr, ABL_VIEW_VHDL );
   freeablexpr( Expr );
   destroybddassoc( (bddsystem โˆ—)0 );
   destroybddsystem( (bddsystem โˆ—)0 );
   destroybddcircuit( (bddcircuit โˆ—)0 );

๐Ÿงš SEE ALSO ๐Ÿงš

  • bdd(1) โ€” go give it a read, 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 bestie, if you spot something weird, send feedback โ€” they literally need it. ๐Ÿ’–


๐Ÿ’Œ sign-off: this page is from ASIM/LIP6, dated October 1, 1997, and it's filed under EXISTBDDNODEASSOCOFF(3). mwah ๐Ÿ’…โœจ

๐Ÿ“ฆ where this page comes from