.\" $Id: satisfybddnode.3,v 1.1 2002/03/18 11:26:51 ludo Exp $ .\" @(#)satisfybddnode.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic .TH SATISFYBDDNODE 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS" .SH NAME satisfybddnode \- finds a satisfying path for a \fBbdd\fP node. .so buster/alliance/alc_origin.1.en.gz .SH SYNOPSYS .nf .if n \{\ .ft B \} .if t \{\ .ft CR \} #include "bdd101.h" bddnode \(**satisfybddnode( BddSystem, BddNode ) bddsystem \(**BddSystem; bddnode \(**BddNode; .ft R .fi .SH PARAMETERS .TP 20 \fIBddSystem The \fBbdd\fP system. .TP \fIBddNode\fP The \fBbdd\fP node. .SH DESCRIPTION \fBsatisfybddnode\fP finds a simple path throw the \fBbdd\fP \fIBddNode\fP that reaches the constant \fBbdd\fP node one, in the \fBbdd\fP system \fIBddSystem\fP. If a null pointer is given, the default \fBbdd\fP system is used. .br .SH RETURN VALUE \fBsatisfybddnode\fP returns a \fBbdd\fP node that satisfies \fIBddNode\fP. .SH ERRORS .if n \{\ .ft B \} .if t \{\ .ft CR \} "index xxx out of range, error !" .ft R .RS The \fIBddNode\fP parameter must be different from the \fBbdd\fP node zero. .RE .SH EXAMPLE .ta 3n 6n 9n 12n 15n 18n 21n .nf .if n \{\ .ft B \} .if t \{\ .ft CR \} #include "bdd101.h" bddsystem \(**BddSystem; bddcircuit \(**BddCircuit; bddnode \(**BddNode; chain_list \(**Expr; BddSystem = createbddsystem( 100, 1000, 100, 50000 ); BddCircuit = createbddcircuit( "hello_world", 10, 10, BddSystem ); Expr = createablbinexpr( ABL_OR, createablatom( "i0" ), createablatom( "i1" ) ); BddNode = addbddcircuitabl( BddCircuit, Expr ); freeablexpr( Expr ); BddNode = satisfybddnode( (bddsystem \(**)0, BddNode ); Expr = convertbddcircuitabl( BddCircuit, BddNode ); /* displays i0 */ viewablexpr( Expr, ABL_VIEW_VHDL ); freeablexpr( Expr ); destroybddsystem( (bddsystem \(**)0 ); destroybddcircuit( (bddcircuit \(**)0 ); .ft R .fi .SH SEE ALSO .BR bdd (1) .so buster/alliance/alc_bug_report.1.en.gz