// TODO: WeakAssoc from loadTruth_cached()
static Cache<Set<S>> trueStatements_cached_cache = new Cache(func { collectTreeSet(loadTruth_cached(), "text") });

static Set<S> trueStatements_cached() {
  ret trueStatements_cached_cache!;
}

static void trueStatements_clearCache() {
  trueStatements_cached_cache.clear();
}

// clear cache if older than x seconds
static void trueStatements_clearCache(double seconds) {
  trueStatements_cached_cache.clear(seconds);
}