AIMA.Core.Logic.FOL.Inference.Proof.ProofFinal.calcualteProofSteps C# (CSharp) Метод

calcualteProofSteps() приватный Метод

private calcualteProofSteps ( ) : void
Результат void
        private void calcualteProofSteps()
        {
            proofSteps = new List<ProofStep>();
            addToProofSteps(finalStep);

            // Move all premises to the front of the
            // list of steps
            int to = 0;
            for (int i = 0; i < proofSteps.Count; i++)
            {
                if (proofSteps[i] is ProofStepPremise)
                {
                    ProofStep m = proofSteps[i];
                    proofSteps.RemoveAt(i);
                    proofSteps.Insert(to, m);
                    to++;
                }
            }

            // Move the Goals after the premises
            for (int i = 0; i < proofSteps.Count; i++)
            {
                if (proofSteps[i] is ProofStepGoal)
                {
                    ProofStep m = proofSteps[i];
                    proofSteps.RemoveAt(i);
                    proofSteps.Insert(to, m);
                    to++;
                }
            }

            // Assign the step #s now that all the proof
            // steps have been unwound
            for (int i = 0; i < proofSteps.Count; i++)
            {
                proofSteps[i].setStepNumber(i + 1);
            }
        }