/// <summary> /// Initialises a new instance of the <see cref="CNFExpression{TModel}"/> class, implicitly converting the provided lambda to CNF in the process. /// </summary> /// <param name="lambda">The predicate to represent.</param> public CNFExpression(Expression <Predicate <TModel> > lambda) { Lambda = CNFConverter.ConvertToCNF(lambda); var clauses = new List <CNFClause <TModel> >(); new ClauseBuilder(this, clauses).Visit(Lambda.Body); Clauses = clauses.AsReadOnly(); }
public CNF ConvertToCNF(ISentence aSentence) { return(cnfConverter.ConvertToCNF(aSentence)); }