Example #1
0
 public bool Equals(TmConfiguration <TTape> c)
 {
     if (c == null)
     {
         return(false);
     }
     if (Q != c.Q)
     {
         return(false);
     }
     return(T.CompleteContentEquals(c.T));
 }
Example #2
0
        public string CheckAndAdd(TmConfiguration <TTape> cfg)
        {
            if (cfg == null)
            {
                throw new ArgumentNullException();
            }

            var sub  = GetSubset(cfg.Q);
            var dupe = sub.FirstOrDefault(x => x.Equals(cfg));

            if (dupe != null)
            {
                return("Equivalent configuration to " + cfg + " already present: " + dupe);
            }

            // Ok, this state is new, add it.
            sub.Add(cfg.Clone());

            return(null);
        }
Example #3
0
        public TmConfiguration <TTape> GetMachineConfigB()
        {
            var tmc = new TmConfiguration <TTape> (Q, Tape);

            return(tmc);
        }