public void GetCycleQP_GivesSelfInjectiveQP_WithUnusualFirstVertex() { const int FirstVertex = -123; var qps = Enumerable.Range(3, 28).Select(k => UsefulQPs.GetCycleQP(k, FirstVertex)); AssertAreSelfInjective(qps); }
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)); }
public void GetCycleQP_GivesSelfInjectiveQP() { var qps = Enumerable.Range(3, 28).Select(k => UsefulQPs.GetCycleQP(k)); AssertAreSelfInjective(qps); }