public void AddAuthorityFact(FactBuilder f) { Term.Symbol authority_symbol = new Term.Symbol("authority"); if (f.Predicate.Ids.Count == 0 || !(f.Predicate.Ids[0].Equals(authority_symbol))) { List <Term> ids = new List <Term> { authority_symbol }; ids.AddRange(f.Predicate.Ids); f.Predicate.Ids = ids; } this.Facts.Add(f.Convert(this.Symbols)); }
public override bool Equals(object o) { if (this == o) { return(true); } if (o == null || GetType() != o.GetType()) { return(false); } FactBuilder fact = (FactBuilder)o; return(Predicate != null?Predicate.Equals(fact.Predicate) : fact.Predicate == null); }
public void AddFact(FactBuilder f) { this.facts.Add(f.Convert(this.symbols)); }