
gapt.proofs.lk.rules.ConversionRule.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
import gapt.expr.formula.Formula
import gapt.logic.Polarity
import gapt.proofs.IndexOrFormula
import gapt.proofs.SequentIndex
import gapt.proofs.lk.LKProof
abstract class ConversionRule extends UnaryLKProof with CommonRule {
def subProof: LKProof
def aux: SequentIndex
def auxFormula: Formula = premise(aux)
def mainFormula: Formula
}
object ConversionRule extends ConvenienceConstructor("ConversionRule") {
def apply(subProof: LKProof, aux: SequentIndex, main: Formula): LKProof =
apply(subProof, aux, main, aux.polarity)
def apply(subProof: LKProof, aux: IndexOrFormula, main: Formula, polarity: Polarity): LKProof =
if (polarity.inSuc)
ConversionRightRule(subProof, aux, main)
else
ConversionLeftRule(subProof, aux, main)
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy