001    package aima.logic.fol.inference.proof;
002    
003    import java.util.ArrayList;
004    import java.util.Collections;
005    import java.util.List;
006    
007    import aima.logic.fol.kb.data.Literal;
008    
009    /**
010     * @author Ciaran O'Reilly
011     * 
012     */
013    public class ProofStepFoChAlreadyAFact extends AbstractProofStep {
014            //
015            private static final List<ProofStep> _noPredecessors = new ArrayList<ProofStep>();
016            //
017            private Literal fact = null;
018    
019            public ProofStepFoChAlreadyAFact(Literal fact) {
020                    this.fact = fact;
021            }
022    
023            //
024            // START-ProofStep
025            public List<ProofStep> getPredecessorSteps() {
026                    return Collections.unmodifiableList(_noPredecessors);
027            }
028    
029            public String getProof() {
030                    return fact.toString();
031            }
032    
033            public String getJustification() {
034                    return "Already a known fact in the KB.";
035            }
036            // END-ProofStep
037            //
038    }