Skip to content

consistency

ltl analyze consistency rules.ts

Answers yes with a trace satisfying all of the rules at once, which is a fixture for the whole set. The query first asks for one where every antecedent actually fires, because a trace where nothing happens satisfies everything and demonstrates nothing.

Answers no by naming the smallest group that cannot co-exist, found by dropping rules one at a time and re-asking. “These two cannot hold together” is actionable; “something in your rule set is wrong” is not.

Almost always because two rules were written by different people about the same tool, and each is reasonable alone. One says a restart must be preceded by a metrics query; another says nothing may run after the incident is closed; a third says the incident must be closed before anything is restarted. Each is defensible; together they forbid restarting at all.

The minimal group is the useful output because it is the smallest thing you have to have an opinion about.