public void addLiteral(Literal literal)
{
if (isImmutable())
{
throw new InvalidOperationException(
"Clause is immutable, cannot be updated.");
}
int origSize = literals.Count;
literals.Add(literal);
if (literals.Count > origSize)
{
if (literal.isPositiveLiteral())
{
positiveLiterals.Add(literal);
}
else
{
negativeLiterals.Add(literal);
}
}
recalculateIdentity();
}