AI-PBDD
view release on metacpan or search on metacpan
tmp = bdd_not (bdd);
bdd_addref (tmp);
RETVAL = tmp;
}
OUTPUT:
RETVAL
int exists(bdd, cube)
int bdd
int cube
CODE:
{
BDD tmp;
CHECK_BDD (bdd);
CHECK_BDD (cube);
tmp = bdd_exist (bdd, cube);
bdd_addref (tmp);
RETVAL=tmp;
}
OUTPUT:
RETVAL
int forall(bdd, cube)
int bdd
int cube
CODE:
{
BDD tmp;
CHECK_BDD (bdd);
CHECK_BDD (cube);
tmp = bdd_forall (bdd, cube);
bdd_addref (tmp);
RETVAL=tmp;
}
OUTPUT:
RETVAL
int relProd(l, r, cube)
int l
int r
int cube
CODE:
{
BDD bdd;
CHECK_BDD (l);
CHECK_BDD (r);
bdd = bdd_appex (l, r, bddop_and, cube);
bdd_addref (bdd);
RETVAL=bdd;
}
OUTPUT:
RETVAL
int restrict(r, var)
int r
int var
CODE:
{
BDD bdd;
CHECK_BDD (r);
CHECK_BDD (var);
bdd = bdd_restrict (r, var);
bdd_addref (bdd);
RETVAL=bdd;
}
OUTPUT:
RETVAL
int constrain(f, c)
int f
int c
CODE:
{
BDD bdd;
CHECK_BDD (f);
CHECK_BDD (c);
bdd = bdd_constrain (f, c);
bdd_addref (bdd);
RETVAL=bdd;
}
OUTPUT:
RETVAL
long createPairI(old, new_,size)
AV *old
AV *new_
int size
CODE:
{
int *oldarr = malloc(size*sizeof(int));
int *newarr = malloc(size*sizeof(int));
int i;
long pair;
for (i=0; i<size; i++) {
SV** elem = av_fetch(old, i, 0);
oldarr[i] = SvNV(*elem);
}
for (i=0; i<size; i++) {
SV** elem = av_fetch(new_, i, 0);
newarr[i] = SvNV(*elem);
}
pair = createPair(oldarr, newarr, size);
free(newarr);
free(oldarr);
RETVAL=pair;
}
OUTPUT:
RETVAL
void deletePair(pair)
long pair
PPCODE:
{
bdd_freepair ((bddPair *) pair);
( run in 0.799 second using v1.01-cache-2.11-cpan-8f98c5d2c55 )