We recall familiar definitions of formula-schemes, sequents and rules, as well as elementary, structural, introduction and elimination rules, plus the central notion of satisfaction of a rule, with some comments on delicate points.

A *formula-scheme* is like a formula of a propositional logic except that it has ‘dummy connectives’, that is, place-markers \(\circ \) in place of any connectives occurring in the formula; we assume that we have a countable supply of such dummy connectives for use as needed. A *set/set* *sequent* is an expression \(A \Rightarrow B\) where *A* and *B* are finite (possibly empty) sets of formula-schemes. For brevity, when \(A = \{\alpha _{1},{\ldots }, \alpha _{n}\}\) and \(B = \{\upbeta _{1},{\ldots }, \upbeta _{m}\}\) we omit parentheses and write simply \(\alpha _{1},{\ldots },\alpha _{n} \Rightarrow \upbeta _{1},{\ldots },\upbeta _{m}\). Similarly, \(A \cup \{\alpha \} \Rightarrow B\) is written \(A, \alpha \Rightarrow B\). *Set/formula-or-empty* sequents are those in which *B* is either a singleton or empty; when *B* is a singleton {\(\upbeta \)} we have a *set/formula sequent* and we write it as \(A \Rightarrow \upbeta \).

Expressions \(A_{1} \Rightarrow B_{1}; {\ldots }; A_{n} \Rightarrow B_{n}/C \Rightarrow D\) are called *n*-premise (*set/set*) *rules*, where \(n \ge 0\) and the \(A_{i} \Rightarrow B_{i}, C \Rightarrow D\) are set/set sequents. If all of the sequents are set/formula ones, it is a *set/formula rule*; similarly, if they are all set/formula-or-empty sequents, we have a *set/formula-or-empty rule*.

We say that a rule \(A_{1} \Rightarrow B_{1}; {\ldots } ; A_{n} \Rightarrow B_{n}/C \Rightarrow D\) is *elementary *iff the following four conditions hold: (1) all formula-schemes in all its *n*+1 sequents are sentence letters except for at most one, in which case (2) it is of the form \(\circ (p_{1}, {\ldots }, p_{k})\) for some *k*-place dummy connective \(\circ \) and sentence letters \(p_{1},{\ldots }, p_{k}\), and (3) it occurs exactly once, this occurrence being (4) in the conclusion-sequent \(C \Rightarrow D\). In condition (2) it is convenient to require \(p_{1}, {\ldots }, p_{k}\) to be distinct, but it makes no difference to the results of this paper.

When the connective does not appear at all in the rule, which thus consists entirely of sentence letters, the rule is *structural*. When the connective appears just once then, if it is in *C* we have an *elimination* rule, while if it is in *D* we have an *introduction* rule. Elimination and introduction rules are called briefly *intelim* rules. Note that when there is a unique occurrence of the connective but it is in one of the premise sequents, we do *not* count the rule as intelim in this paper. Some texts use the notion in a broader (and at times rather loose) way.

A *model* for a rule is a pair (*L*, \(\vdash )\) where *L* is a propositional language and \(\vdash \) is a consequence relation over it. In this paper \(\vdash \) is always assumed to be a closure relation (i.e. satisfying the Tarski conditions appropriate to the set/set or set/formula context), and also to be closed under uniform substitution for sentence letters.

Consider any *n*-premise rule \(A_{1} \Rightarrow B_{1}; {\ldots } ; A_{n} \Rightarrow B_{n}/C \Rightarrow D\) and model (*L*, \(\vdash \)). A specification of connectives from *L* as interpretations of the dummy connectives in the rule is said to *satisfy* the rule in the model iff, after replacing the dummy connectives as specified, there is no instantiation \(\sigma \) of sentence letters to formulae of *L* such that \(\sigma (A_{i}) \vdash \sigma (B_{i})\) for all \(i \le n\) while \(\sigma (C) \nvdash \sigma (D)\). For intelim rules, where there is just one dummy connective, we evidently need to specify just one connective \(*\), and so we will say that \(*\) satisfies the rule in the model. Satisfaction of a *sequent* \(C \Rightarrow D\) in a model is identified with satisfaction of the zero-premise rule with conclusion \(C \Rightarrow D\).

This is quite a complex definition, and it is important not to neglect the universal quantification over instantiations \(\sigma \). It is also important to keep track of the parameters *L*, \(\vdash \) in the model, since variation of either can change satisfaction into its failure or conversely. Nevertheless, it is not difficult to show that if a *truth-functional* connective \(*\) satisfies an intelim rule in a classical model (*L*, \(\vDash \)) that can express at least one tautology and at least one contradiction, then it does so in any other such classical model. This is because valuations of instantiations into one of the two languages may be mimicked by suitable substitutions of the tautology and the contradiction in the other. For this reason, when we are considering only truth-functional connectives (as in Sect. 1) we can be quite relaxed about the exact choice of the classical language.

An intelim rule that is satisfied by a model can be *degenerate* in the sense that it is a substitution instance of a structural rule that is satisfied by all models. For example, the zero-premise elimination rule *p*, \(p \circ q \Rightarrow p\), which is satisfied by the model (\(L, \wedge , \vDash \)) where *L* is a classical language, is also an instance of the structural rule *p*, \(q \Rightarrow p\) satisfied by all models.

When one is dealing with a single propositional language, then it is possible to talk of rules without using formula-schemes and dummy connectives: one can simply identify the rule with the set of all its instances in the fixed language, or even with a representative underlying instance where the letters of the scheme are sent injectively to letters of the language. But if one wishes to consider the applications of a single rule to *multiple* languages, as in this paper, then such a simplified framework becomes cumbersome to operate with clarity and rigour.