コード例 #1
0
        public void DivTest()
        {
            var perm = Symmetric.Create(new int[] { 1, 2, 3, 0 });

            Assert.Equal(new[] { 2, 3, 4, 1 }, new[] { 1, 2, 3, 4 } / perm);
            Assert.Equal(new[] { 1, 2, 3, 4 }, new[] { 1, 2, 3, 4 } / (perm / perm));
        }
コード例 #2
0
        public void MulTest()
        {
            var perm = Symmetric.Create(new int[] { 1, 2, 3, 0 });

            Assert.Equal(new[] { 4, 1, 2, 3 }, new[] { 1, 2, 3, 4 } *perm);
            Assert.Equal(new[] { 3, 4, 1, 2 }, new[] { 1, 2, 3, 4 } *(perm * perm));
        }
コード例 #3
0
        public void Test()
        {
            var sym = Symmetric.Create(new[] { 1, 2, 3, 0 }).Pow(6);

            Assert.Equal(4, sym.Size);
            Assert.Equal(2, sym[0]);
            Assert.Equal(3, sym[1]);
            Assert.Equal(0, sym[2]);
            Assert.Equal(1, sym[3]);
        }
コード例 #4
0
        public void Test()
        {
            var sym = Symmetric.Create(new int[] { 1, 2, 3, 0 });

            Assert.Equal(4, sym.Size);
            Assert.Equal(1, sym[0]);
            Assert.Equal(2, sym[1]);
            Assert.Equal(3, sym[2]);
            Assert.Equal(0, sym[3]);
            Assert.Throws <ArgumentException>(() => Symmetric.Create(new int[] { 1, 2, 3, 4 }));
        }
コード例 #5
0
        public void Test()
        {
            var perm = Symmetric.Create(new int[] { 1, 2, 3, 0 }).Extend(6);

            Assert.Equal(6, perm.Size);
            Assert.Equal(1, perm[0]);
            Assert.Equal(2, perm[1]);
            Assert.Equal(3, perm[2]);
            Assert.Equal(0, perm[3]);
            Assert.Equal(4, perm[4]);
            Assert.Equal(5, perm[5]);
        }