Ejemplo n.º 1
0
        public void GetCycleQP_GivesSelfInjectiveQP_WithUnusualFirstVertex()
        {
            const int FirstVertex = -123;
            var       qps         = Enumerable.Range(3, 28).Select(k => UsefulQPs.GetCycleQP(k, FirstVertex));

            AssertAreSelfInjective(qps);
        }
Ejemplo n.º 2
0
        public void ComputeMaximalNonzeroEquivalenceClassRepresentativeStartingAt_Cycle(int n)
        {
            var settings = GetSettings(detectNonCancellativity: false);
            var qp       = UsefulQPs.GetCycleQP(n);

            DoSetup(qp, out var ruleTree);

            var actualRepresentativePaths = Computer.ComputeMaximalNonzeroEquivalenceClassRepresentativesStartingAt(qp.Quiver, 1, ruleTree, settings).MaximalNonzeroEquivalenceClassRepresentatives.ToList();

            // 1->2->...->n-1
            var expectedRepresentative = new Path <int>(1, Enumerable.Range(1, n - 2).Select(k => new Arrow <int>(k, k + 1)));

            Assert.That(actualRepresentativePaths, Has.Count.EqualTo(1));
            Assert.That(actualRepresentativePaths.Single(), Is.EqualTo(expectedRepresentative));
        }
Ejemplo n.º 3
0
        public void GetCycleQP_GivesSelfInjectiveQP()
        {
            var qps = Enumerable.Range(3, 28).Select(k => UsefulQPs.GetCycleQP(k));

            AssertAreSelfInjective(qps);
        }