302 if ( zSet ==
z0 || zSet ==
z1 )
311 DdNode *zSet0, *zSet1, *zRes0, *zRes1;
323 Cudd_RecursiveDerefZdd(dd, zSet0);
332 Cudd_RecursiveDerefZdd(dd, zSet0);
333 Cudd_RecursiveDerefZdd(dd, zSet1);
337 Cudd_RecursiveDerefZdd(dd, zSet0);
343 zRes = cuddZddGetNode( dd, zSet->index, zRes1, zRes0 );
346 Cudd_RecursiveDerefZdd( dd, zRes0 );
347 Cudd_RecursiveDerefZdd( dd, zRes1 );
393 DdNode *zSet0, *zSet1, *zRes0, *zRes1;
405 Cudd_RecursiveDerefZdd(dd, zSet0);
417 Cudd_RecursiveDerefZdd(dd, zSet0);
418 Cudd_RecursiveDerefZdd(dd, zSet1);
422 Cudd_RecursiveDerefZdd(dd, zSet1);
425 zRes = cuddZddGetNode( dd, zSet->index, zRes1, zRes0 );
428 Cudd_RecursiveDerefZdd( dd, zRes0 );
429 Cudd_RecursiveDerefZdd( dd, zRes1 );
476 TopS = dd->permZ[S->index];
477 TopT = dd->permZ[T->index];
479 if ( TopS > TopT || (TopS == TopT && S > T) )
488 DdNode *zSet0, *zSet1, *zRes0, *zRes1;
502 Cudd_RecursiveDerefZdd(dd, zSet0);
524 Cudd_RecursiveDerefZdd(dd, zSet0);
525 Cudd_RecursiveDerefZdd(dd, zSet1);
529 Cudd_RecursiveDerefZdd(dd, zSet0);
535 zRes = cuddZddGetNode( dd, S->index, zRes1, zRes0 );
538 Cudd_RecursiveDerefZdd( dd, zRes0 );
539 Cudd_RecursiveDerefZdd( dd, zRes1 );
585 TopS = dd->permZ[S->index];
586 TopT = dd->permZ[T->index];
588 if ( TopS > TopT || (TopS == TopT && S > T) )
597 DdNode *zSet0, *zSet1, *zRes0, *zRes1;
610 Cudd_RecursiveDerefZdd(dd, zSet0);
635 Cudd_RecursiveDerefZdd(dd, zSet0);
636 Cudd_RecursiveDerefZdd(dd, zSet1);
640 Cudd_RecursiveDerefZdd(dd, zSet1);
643 zRes = cuddZddGetNode( dd, S->index, zRes1, zRes0 );
646 Cudd_RecursiveDerefZdd( dd, zRes0 );
647 Cudd_RecursiveDerefZdd( dd, zRes1 );
682 if ( S ==
z0 || T ==
z0 )
690 TopS = dd->permZ[S->index];
691 TopT = dd->permZ[T->index];
693 if ( TopS > TopT || (TopS == TopT && S > T) )
702 DdNode *zSet0, *zSet1, *zRes0, *zRes1, *zTemp;
706 zTemp = cuddZddUnion(dd, cuddE(T), cuddT(T) );
715 Cudd_RecursiveDerefZdd(dd, zTemp);
719 Cudd_RecursiveDerefZdd(dd, zTemp);
725 Cudd_RecursiveDerefZdd(dd, zSet0);
731 zRes1 = cuddZddUnion(dd, zSet0, zSet1 );
734 Cudd_RecursiveDerefZdd(dd, zSet0);
735 Cudd_RecursiveDerefZdd(dd, zSet1);
739 Cudd_RecursiveDerefZdd(dd, zSet0);
740 Cudd_RecursiveDerefZdd(dd, zSet1);
746 Cudd_RecursiveDerefZdd(dd, zRes1);
763 Cudd_RecursiveDerefZdd(dd, zRes1);
770 zRes = cuddZddGetNode( dd, S->index, zRes1, zRes0 );
773 Cudd_RecursiveDerefZdd( dd, zRes0 );
774 Cudd_RecursiveDerefZdd( dd, zRes1 );
809 if ( S ==
z0 || T ==
z0 )
811 if ( S ==
z1 || T ==
z1 )
815 TopS = dd->permZ[S->index];
816 TopT = dd->permZ[T->index];
818 if ( TopS > TopT || (TopS == TopT && S > T) )
827 DdNode *zSet0, *zSet1, *zRes0, *zRes1, *zTemp;
832 zTemp = cuddZddUnion(dd, cuddE(T), cuddT(T) );
841 Cudd_RecursiveDerefZdd(dd, zTemp);
845 Cudd_RecursiveDerefZdd(dd, zTemp);
851 Cudd_RecursiveDerefZdd(dd, zSet0);
857 zRes0 = cuddZddUnion(dd, zSet0, zSet1 );
860 Cudd_RecursiveDerefZdd(dd, zSet0);
861 Cudd_RecursiveDerefZdd(dd, zSet1);
865 Cudd_RecursiveDerefZdd(dd, zSet0);
866 Cudd_RecursiveDerefZdd(dd, zSet1);
872 Cudd_RecursiveDerefZdd(dd, zRes0);
878 zRes = cuddZddGetNode( dd, S->index, zRes1, zRes0 );
881 Cudd_RecursiveDerefZdd( dd, zRes0 );
882 Cudd_RecursiveDerefZdd( dd, zRes1 );
900 Cudd_RecursiveDerefZdd(dd, zSet0);
906 zRes = cuddZddUnion(dd, zSet0, zSet1 );
909 Cudd_RecursiveDerefZdd(dd, zSet0);
910 Cudd_RecursiveDerefZdd(dd, zSet1);
914 Cudd_RecursiveDerefZdd(dd, zSet0);
915 Cudd_RecursiveDerefZdd(dd, zSet1);
948 if ( S ==
z0 || T ==
z0 )
956 TopS = dd->permZ[S->index];
957 TopT = dd->permZ[T->index];
959 if ( TopS > TopT || (TopS == TopT && S > T) )
968 DdNode *zSet0, *zSet1, *zRes0, *zRes1, *zTemp;
981 Cudd_RecursiveDerefZdd(dd, zTemp);
985 Cudd_RecursiveDerefZdd(dd, zTemp);
991 Cudd_RecursiveDerefZdd(dd, zSet0);
1000 Cudd_RecursiveDerefZdd(dd, zSet0);
1001 Cudd_RecursiveDerefZdd(dd, zSet1);
1005 Cudd_RecursiveDerefZdd(dd, zSet0);
1006 Cudd_RecursiveDerefZdd(dd, zSet1);
1010 if ( zRes0 == NULL )
1012 Cudd_RecursiveDerefZdd(dd, zRes1);
1021 if ( zRes1 == NULL )
1027 if ( zRes0 == NULL )
1029 Cudd_RecursiveDerefZdd(dd, zRes1);
1037 if ( zRes0 == NULL )
1039 Cudd_RecursiveDerefZdd(dd, zTemp);
1040 Cudd_RecursiveDerefZdd(dd, zRes1);
1044 Cudd_RecursiveDerefZdd(dd, zTemp);
1047 zRes = cuddZddGetNode( dd, S->index, zRes1, zRes0 );
1050 Cudd_RecursiveDerefZdd( dd, zRes0 );
1051 Cudd_RecursiveDerefZdd( dd, zRes1 );