Create an LKRuleCreationException with a message starting with "Cannot create $longName: ..."
Create an LKRuleCreationException with a message starting with "Cannot create $longName: ..."
The rest of the message.
An LKProof.
The proposed end sequent.
If true, will require that the end sequent of p contains no formula that doesn't appear at least once in targetSequent.
p with its end sequent modified to targetSequent by means of weakening and contraction.
An LKProof.
Map of type HOLFormula => Int that expresses “f should occur n times in the antecedent”.
Map of type HOLFormula => Int that expresses “f should occur n times in the succedent”.
If true: requires that for f -> n in antMap or sucMap, if f occurs in the root of s1, then n > 0.
Combines findIndicesOrFormulasInPremise and validateIndices.
Combines findIndicesOrFormulasInPremise and validateIndices. That is, it will return a pair of lists of indices and throw an exception if either list contains a -1.
The sequent in question.
The list of indices or formulas in the antecedent.
The list of indices or formulas in the succedent.
The long name of the rule.
The long name of the rule.
Throws an exception if the output of findFormulasInPremise contains any -1 entries.
Throws an exception if the output of findFormulasInPremise contains any -1 entries.
The sequent in question.
The list of formulas in the antecedent.
The list of indices corresponding to antFormulas.
The list of formulas in the succedent.
The list indices corresponding to sucFormulas.
An LKProof.
The proposed end sequent.
If true, will require that the end sequent of p contains no formula that doesn't appear at least once in targetSequent.
p with its end sequent modified to targetSequent by means of weakening and contraction and an OccConnector.
An LKProof.
Map of type HOLFormula => Int that expresses “f should occur n times in the antecedent”.
Map of type HOLFormula => Int that expresses “f should occur n times in the succedent”.
If true: requires that for f -> n in antMap or sucMap, if f occurs in the root of s1, then n > 0.
A proof and an OccConnector connecting its end sequent to the end sequent of p.
This macro rule simulates multiple weakenings and contractions in both cedents.