class ReductiveCutElimination extends AnyRef
- Alphabetic
- By Inheritance
- ReductiveCutElimination
- AnyRef
- Any
- by any2stringadd
- by StringFormat
- by Ensuring
- by ArrowAssoc
- Hide All
- Show All
- Public
- All
Instance Constructors
- new ReductiveCutElimination()
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
def
+(other: String): String
- Implicit
- This member is added by an implicit conversion from ReductiveCutElimination to any2stringadd[ReductiveCutElimination] performed by method any2stringadd in scala.Predef.
- Definition Classes
- any2stringadd
-
def
->[B](y: B): (ReductiveCutElimination, B)
- Implicit
- This member is added by an implicit conversion from ReductiveCutElimination to ArrowAssoc[ReductiveCutElimination] performed by method ArrowAssoc in scala.Predef.
- Definition Classes
- ArrowAssoc
- Annotations
- @inline()
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
apply(proof: LKProof, pred_done: (LKProof) ⇒ Boolean, pred_cut: (LKProof, LKProof) ⇒ Boolean): LKProof
This methods implements a version of Gentzen's cut-elimination proof parameterized by a strategy given by pred_cut and pred_done.
This methods implements a version of Gentzen's cut-elimination proof parameterized by a strategy given by pred_cut and pred_done.
The method traverses an LKProof recursively from the bottom up. When it reaches a cut, the method calls pred_cut(global, sub), where global is complete proof under consideration, while sub is the subproof of global ending in the cut. If this call returns true, the cut is reduced using the usual Gentzen cut-elimination rules. If the call returns false, the traversion continues.
After every application of a reduction, pred_done(global) is called. If it returns true, the algorithm terminates, returning the current proof. If it returns false, the algorithm continues to traverse the proof.
This means that pred_cut and pred_done allow the definition of a (not necessarily terminating!) cut-elimination strategy. A standard implementation (reducing left-uppermost cuts until the proof is cut-free) is provided by another apply method in this class.
- proof
The proof to subject to cut-elimination.
- pred_done
A predicate deciding when to terminate the algorithm.
- pred_cut
A predicate deciding whether or not to reduce a cut encountered when traversing the proof.
- returns
The proof as it is after pred_done returns true.
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
def
eliminateAllByUppermost(proof: LKProof): LKProof
This methods implements a version of Gentzen's cut-elimination proof using the (known to be terminating) strategy of reducing a left-uppermost cut.
This methods implements a version of Gentzen's cut-elimination proof using the (known to be terminating) strategy of reducing a left-uppermost cut. The algorithm terminates when all cuts have been eliminated.
- proof
The proof to subject to cut-elimination.
- returns
The cut-free proof.
-
def
ensuring(cond: (ReductiveCutElimination) ⇒ Boolean, msg: ⇒ Any): ReductiveCutElimination
- Implicit
- This member is added by an implicit conversion from ReductiveCutElimination to Ensuring[ReductiveCutElimination] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
-
def
ensuring(cond: (ReductiveCutElimination) ⇒ Boolean): ReductiveCutElimination
- Implicit
- This member is added by an implicit conversion from ReductiveCutElimination to Ensuring[ReductiveCutElimination] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
-
def
ensuring(cond: Boolean, msg: ⇒ Any): ReductiveCutElimination
- Implicit
- This member is added by an implicit conversion from ReductiveCutElimination to Ensuring[ReductiveCutElimination] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
-
def
ensuring(cond: Boolean): ReductiveCutElimination
- Implicit
- This member is added by an implicit conversion from ReductiveCutElimination to Ensuring[ReductiveCutElimination] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
def
formatted(fmtstr: String): String
- Implicit
- This member is added by an implicit conversion from ReductiveCutElimination to StringFormat[ReductiveCutElimination] performed by method StringFormat in scala.Predef.
- Definition Classes
- StringFormat
- Annotations
- @inline()
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- var recordSteps: Boolean
- val steps: Buffer[LKProof]
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- AnyRef → Any
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
def
→[B](y: B): (ReductiveCutElimination, B)
- Implicit
- This member is added by an implicit conversion from ReductiveCutElimination to ArrowAssoc[ReductiveCutElimination] performed by method ArrowAssoc in scala.Predef.
- Definition Classes
- ArrowAssoc