private static bool CorrectOnPosSet(Regexp regexp, IEnumerable <string> testSet)
 {
     foreach (var test in testSet)
     {
         if (!regexp.HasModel(test))
         {
             return(false);
         }
     }
     return(true);
 }
 public override bool HasModel(string input)
 {
     for (int i = 0; i <= input.Length; i++)
     {
         if (left.HasModel(input.Substring(0, i)) && right.HasModel(input.Substring(i, input.Length - i)))
         {
             return(true);
         }
     }
     return(false);
 }
        public override bool HasModel(string input)
        {
            bool[] isModel = new bool[input.Length + 1];
            isModel[0] = false;

            for (int i = 1; i <= input.Length; i++)
            {
                isModel[i] = false;

                for (int j = 0; j < i; j++)
                {
                    if (isModel[j] && r.HasModel(input.Substring(j, i - j)))
                    {
                        isModel[i] = true;
                        break;
                    }
                }
            }
            return(isModel[input.Length]);
        }
 public override bool HasModel(string input)
 {
     return(left.HasModel(input) || right.HasModel(input));
 }
 public override bool HasModel(string input)
 {
     return(input == "" || r.HasModel(input));
 }