Exemple #1
0
        public bool Equals(PauliTerm x)
        {
            // If parameter is null, return false.
            if (ReferenceEquals(x, null))
            {
                return(false);
            }

            // Optimization for a common success case.
            if (ReferenceEquals(this, x))
            {
                return(true);
            }

            // If run-time types are not exactly the same, return false.
            if (GetType() != x.GetType())
            {
                return(false);
            }
            // Return true if the fields match.
            return(QubitIndices.SequenceEqual(x.QubitIndices) && TermType == x.TermType);
        }
Exemple #2
0
 bool IEquatable <PauliTerm> .Equals(PauliTerm other) =>
 other.TermType == this.TermType &&
 QubitIndices.SequenceEqual(other.QubitIndices);