|
|
@ -130,6 +130,18 @@ public class AcceptanceRabinDD |
|
|
return new AcceptanceGenericDD(AcceptanceGeneric.ElementType.AND, genericL, genericK); |
|
|
return new AcceptanceGenericDD(AcceptanceGeneric.ElementType.AND, genericL, genericK); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
|
* Replaces the BDD functions for the acceptance sets |
|
|
|
|
|
* of this Rabin pair with the intersection |
|
|
|
|
|
* of the current acceptance sets and the function {@code restrict}. |
|
|
|
|
|
* <br>[ REFS: <i>none</i>, DEREFS: <i>none</i> ] |
|
|
|
|
|
*/ |
|
|
|
|
|
public void intersect(JDDNode restrict) |
|
|
|
|
|
{ |
|
|
|
|
|
L = JDD.And(L, restrict.copy()); |
|
|
|
|
|
K = JDD.And(K, restrict.copy()); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
/** Returns a textual representation of this Rabin pair. */ |
|
|
/** Returns a textual representation of this Rabin pair. */ |
|
|
@Override |
|
|
@Override |
|
|
public String toString() |
|
|
public String toString() |
|
|
@ -189,6 +201,14 @@ public class AcceptanceRabinDD |
|
|
return result; |
|
|
return result; |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
|
public void intersect(JDDNode restrict) |
|
|
|
|
|
{ |
|
|
|
|
|
for (RabinPairDD pair : this) { |
|
|
|
|
|
pair.intersect(restrict); |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
/** |
|
|
/** |
|
|
* Get the Streett acceptance condition that is the dual of this Rabin acceptance condition, i.e., |
|
|
* Get the Streett acceptance condition that is the dual of this Rabin acceptance condition, i.e., |
|
|
* any word that is accepted by this condition is rejected by the returned Streett condition. |
|
|
* any word that is accepted by this condition is rejected by the returned Streett condition. |
|
|
|