gapt.expr.formula.fol.FOLFunction.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.expr.formula.fol
import gapt.expr.Apps
object FOLFunction {
def apply(sym: String, args: FOLTerm*)(implicit dummyImplicit: DummyImplicit): FOLTerm = FOLFunction(sym, args)
def apply(sym: String, args: Seq[FOLTerm]): FOLTerm =
Apps(FOLFunctionConst(sym, args.size), args).asInstanceOf[FOLTerm]
def unapply(e: FOLTerm): Option[(String, List[FOLTerm])] = e match {
case Apps(FOLFunctionConst(sym, _), args) =>
Some((sym, args.asInstanceOf[List[FOLTerm]]))
case _ => None
}
}