public static Dictionary <SymmetryType, int> GetSymmetries(this Tableau tableau, NodePair nodePair) { return(tableau.Shape.SymmetryTransformations .Where(symmetry => nodePair.Node1.Coordinates == symmetry.Transform(nodePair.Node2.Coordinates) && nodePair.Node2.Coordinates == symmetry.Transform(nodePair.Node1.Coordinates)) .GroupBy(symmetry => symmetry.SymmetryType) .ToDictionary( group => group.Key, group => group.Count())); }
public abstract Func <Step, IEnumerable <byte[]> > GetEquivalentPathsDelegate(NodePair nodePair);