/// <summary> /// Creates a transducer <c>T(a, b) = I[a[i] is in X for all i] I[b[j] is in Y for all j]</c>, where <c>X</c> and <c>Y</c> /// are the supports of given element distributions. /// </summary> /// <param name="allowedSrcElements">Specifies the elements allowed in the first transducer argument.</param> /// <param name="allowedDestElements">Specifies the elements allowed in the second transducer argument.</param> /// <returns>The created transducer.</returns> public static TThis Replace(TSrcElementDistribution allowedSrcElements, TDestElementDistribution allowedDestElements) { Argument.CheckIfNotNull(allowedSrcElements, "allowedSrcElements"); Argument.CheckIfNotNull(allowedDestElements, "allowedDestElements"); return(Replace( Automaton <TSrcSequence, TSrcElement, TSrcElementDistribution, TSrcSequenceManipulator, TSrcAutomaton> .Constant(1.0, allowedSrcElements), Automaton <TDestSequence, TDestElement, TDestElementDistribution, TDestSequenceManipulator, TDestAutomaton> .Constant(1.0, allowedDestElements))); }