public override void isSatiesfied <T>(TransitionSystem <T> transition_system, LinkedList <T> states, out HashSet <T> sat, ref Pre_Compute_Factory <T> factory) { if (factory.prop_sats.ContainsKey(this)) { factory.prop_sats.TryGetValue(this, out sat); return; } HashSet <T> res = new HashSet <T>(); foreach (var entry in states) { T state = entry; bool satisfied = transition_system.HasAtomicProposition(ref state, atomic.PropositionIndex); if (satisfied) { res.Add(state); } } //Console.WriteLine("atomic"); factory.prop_sats.Add(this, res); sat = res; }