!7 p { ai_alternativeSmartBot(); temp final ActualThoughtSpace ts = newThoughtSpace(); ts.blockedB = litsymbolset("possibly related to:"); doEvery_daemon(1000, new Runnable { int n = ts.size(); public void run() { int _n = ts.size(); if (_n != n) print("Thought space size: " + (n = _n)); } }); L blocked = thoughtSpace_allBlocked(ts); print("Blocked: " + l(blocked)); //Collection terms = allFullIndexedTerms(); Set terms = asSet(ai_texts("$X", "possibly related to:", "$Y", ts.parent)); print("Scanning " + l(terms) + " terms of approx. " + ai_indexSize()); for (S term : terms) ai_spec_allWords(term); print("Blocked: " + l(blocked) + ", recreated: " + ts.size()); new L gained; new L ok; MultiMap, TripleWeb> _blocked = triplesByContentMap(blocked); for (TripleWeb w : ts.allTriples()) { T3 t = new Triple(w); if (_blocked.containsKey(t)) { ok.add(w); _blocked.remove(t); } else gained.add(w); } Collection lost = values(_blocked); print("Lost: " + nTriple(lost) + ", gained: " + nTriple(gained)); printAsciiHeading("Lost Examples"); pnl(takeFirst(10, lost)); printAsciiHeading("Gained Examples"); pnl(takeFirst(10, gained)); printAsciiHeading("OK Examples (" + l(ok + ")"); pnl(takeFirst(10, ok)); }