protected void CreateTArbSeqCFGEqsSet()
        {
            linEquationContext.TArbSeqCFGLinProgEqsSet = DAGLinEquationsSet.CreateEqsSetForDAG(
                linEquationContext.TCPELinProgMatrix,
                meapContext.TArbSeqCFG,
                tapeSegContext.TArbSeqCFGUnusedNodes);

            {
                SortedDictionary <long, RationalNumber> coeffs = new();
                long sNodeId = meapContext.TArbSeqCFG.GetSourceNodeId();

                long sNodeVar = linEquationContext.TArbSeqCFGLinProgEqsSet.NodeToVar[sNodeId];
                coeffs[sNodeVar] = RationalNumber.Const_1;

                long equation = linEquationContext.TCPELinProgMatrix.AddEquation(coeffs, EquationKind.Equal, RationalNumber.Const_1);
                linEquationContext.TArbSeqCFGLinProgEqsSet.AddEquation(equation);
            }

            {
                SortedDictionary <long, RationalNumber> coeffs = new();
                long tNodeId = meapContext.TArbSeqCFG.GetSinkNodeId();

                long tNodeVar = linEquationContext.TArbSeqCFGLinProgEqsSet.NodeToVar[tNodeId];
                coeffs[tNodeVar] = RationalNumber.Const_1;

                long equation = linEquationContext.TCPELinProgMatrix.AddEquation(coeffs, EquationKind.Equal, RationalNumber.Const_1);
                linEquationContext.TArbSeqCFGLinProgEqsSet.AddEquation(equation);
            }
        }
        public override bool CreateTCPEPLinProgEqsSet()
        {
            tcpeLinProgEqsSet = new DAGLinEquationsSet(linEquationContext.TCPELinProgMatrix, meapContext.TArbSeqCFG);

            CreateTArbSeqCFGEqsSet();
            CreateCommoditiesEquationsSet();

            linEquationContext.KSetZetaLinProgEqsSets = new SortedDictionary <long, DAGLinEquationsSet>();
            foreach (KeyValuePair <long, SortedSet <long> > p in tapeSegContext.KSetZetaSubset)
            {
                linEquationContext.KSetZetaLinProgEqsSets.Add(p.Key, CreateKZetaEquationsSet(p.Value));
            }

            CreateCommIsEqualToCFGEqsSet();

            Trace();
            linEquationContext.TCPELinProgEqsSet = tcpeLinProgEqsSet;

            return(true);
        }