public override ISet <Clause> VisitBinarySentence(ComplexSentence s, ISet <Clause> arg) { if (s.IsAndSentence()) { s.GetSimplerSentence(0).Accept(this, arg); s.GetSimplerSentence(1).Accept(this, arg); } else if (s.IsOrSentence()) { IList <Literal> literals = new List <Literal>(LiteralCollector.getLiterals(s)); //ArrayList arg.Add(new Clause(literals)); } else { throw new ArgumentException("Sentence is not in CNF: " + s); //IllegalArgumentException } return(arg); }