An LKProof.
The proposed end sequent.
If true, will require that the root of s1 contains no formula that doesn't appear at least once in targetSequent.
s1 with its end sequent modified to targetSequent by means of weakening and contraction.
An LKProof.
List of pairs (f,n) of type (Formula, Int) that express “f should occur n times in the antecedent”.
List of pairs (f,n) of type (Formula, Int) that express “f should occur n times in the succedent”.
If true: requires that for (f,n) in antList or sucList, if f occurs in the root of s1, then n > 0.
This macro rule simulates multiple weakenings and contractions in both cedents.