public Chain addToIndex(Chain c)
{
Chain added = null;
Literal head = c.getHead();
if (null != head)
{
Dictionary<String, List<Chain>> toAddTo = null;
if (head.isPositiveLiteral())
{
toAddTo = posHeads;
}
else
{
toAddTo = negHeads;
}
String key = head.getAtomicSentence().getSymbolicName();
List<Chain> farParents = toAddTo[key];
if (null == farParents)
{
farParents = new List<Chain>();
toAddTo.Add(key, farParents);
}
added = c;
farParents.Add(added);
}
return added;
}