
gapt.proofs.lk.rules.macros.ExchangeLeftMacroRule.scala Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of gapt_3 Show documentation
Show all versions of gapt_3 Show documentation
General Architecture for Proof Theory
The newest version!
package gapt.proofs.lk.rules.macros
import gapt.proofs.Ant
import gapt.proofs.SequentIndex
import gapt.proofs.lk.LKProof
import gapt.proofs.lk.rules.ContractionLeftRule
import gapt.proofs.lk.rules.WeakeningLeftRule
/**
* Move a formula to the beginning of the antecedent, where the main formula is customarily placed.
*
* (π)
* Γ, A, Γ' :- Δ
* --------------
* A, Γ, Γ' :- Δ
*
*/
object ExchangeLeftMacroRule {
def apply(subProof: LKProof, aux: SequentIndex): ContractionLeftRule = {
require(aux isAnt)
require(subProof.endSequent isDefinedAt aux)
ContractionLeftRule(WeakeningLeftRule(subProof, subProof.endSequent(aux)), Ant(0), aux + 1)
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy